我一直在解决黑客问题.我遇到了一个虚函数问题,我被要求创建一个名为Student的类.该类必须具有名为cur_id(当前id)的int变量.这是班级;
class Student: public Person{
public:
static int id;
Student(){
cur_id = ++id;
}
};
int Student::id = 0;
Run Code Online (Sandbox Code Playgroud)
我被要求在创建类的每个新对象时增加cur_id +1.所以,我决定增加cur_id构造函数.如您所见,我已经static int在类中声明了一个变量static int id.然后我想在课堂上用零初始化它的值.但是当我尝试它时Student::id = 0;,我无法访问id变量.我需要再次指定其数据类型,就像我再次声明变量一样int Student::id = 0;.是什么原因,为什么我需要两次声明一个静态变量?我知道这是一个新手问题,可能有一个简单的答案,但我找不到其他主题的答案.提前致谢.