我是C ++的初学者,对静态成员变量和成员函数有疑问。
我已经实现了一个类 -
class Foo
{
private:
static int myVariable;
public:
static void setMyVariable()
{
myVariable = 100;
}
static void resetMyVariable()
{
myVariable = 0;
}
};
当我编写像这样的代码时,有以下注意事项 -
myVariable
我已将此类放在头文件中并包含在我的主文件中。当我这样做时,我收到错误undefined reference to Foo::myVariable
我想知道我是否可以编写一个能满足上述要求的代码?
谢谢!
答案 0 :(得分:1)
您需要在某处定义静态类变量 : 例如在主C ++文件中,
int Foo::myVariable;
请注意,从技术上讲,通过将所有内容设为静态,您可能没有Foo
的实例。