问题描述
class Tank{public: static int getCount() {return count; } static int count;//定义一个静态成员变量};int main(void){ Tank::count = 0; //cout << Tank::getCount() << endl; cout << Tank::count << endl; //无法运行 system('pause'); return 0;}
这段代码中,会出现链接错误,请问是哪里出错了?
问题解答
回答1:你的初始化是不是写错了,应该是
int Tank::count = 0;int main(void){ cout << Tank::count << endl; //无法运行 system('pause'); return 0;}
初始化放main外面。
回答2:看下把声明放到前面可以吗?
回答3:class Tank{public: static int getCount() {return count; } static int count;//声明一个静态成员变量};//定义并初始化countint Tank::count = 0;int main(void){Tank::count = 0; //cout << Tank::getCount() << endl; cout << Tank::count << endl; //无法运行 system('pause'); return 0;}