关于一个基本的C++语法问题。

zdrone zdrone 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include <iostream.h>
#include "mycls.h"

void main()
{
cout<<"hello world";
mycls cls;
cls.output();

}

mycls.h

class mycls
{
public:
static int sa;
void output();
};
mycls.cpp
#include "mycls.h"
#include <iostream.h>

int mycls::sa;

void mycls::output()
{
cout<<"this is myclass \n";
sa=10;
cout<<sa;
}

在mycls.cpp中使用mycls.h头文件中定义的 static int sa; 为什么非要在头上写上int mycls::sa;
否则编译器会提示 unresolved external symbol 没有解决的外部变量。这个是什么原理?c++原理忘记了,也不知道书上哪地方讲到
只能来问问各位了
...全文

相关推荐

评论 11
收藏 已收藏
分享
返回顶部
zdrone
VC/MFC 16,550 成员 421,606 内容