从静态函数C++中获取STATIC变量
正如我们所知,我们可以从静态方法访问静态成员变量。 但是这个代码给了我一个错误从静态函数C++中获取STATIC变量,c++,static,C++,Static,正如我们所知,我们可以从静态方法访问静态成员变量。 但是这个代码给了我一个错误 class A { public: static int i; static int inc(); }; int A::inc() { i++; return i; } int main() { A::inc(); } 有人能告诉我我遗漏了什么吗这是一个链接器错误。您已经声明了变量,但尚未定义它,因此链接器无法找到它 添加以下内容: "A::i", referenced
class A {
public:
static int i;
static int inc();
};
int A::inc() {
i++;
return i;
}
int main() {
A::inc();
}
有人能告诉我我遗漏了什么吗这是一个链接器错误。您已经声明了变量,但尚未定义它,因此链接器无法找到它 添加以下内容:
"A::i", referenced from:
A::inc() in ccn8PKhC.o
ld: symbol(s) not found for architecture x86_64
在类之外的.cpp文件中的某个全局位置以及定义它的任何函数。如果项目中有多个.cpp文件,则定义只需位于其中一个文件中
int A::i = 0;