C++的静态成员变量必须在类外定义,即使是类的对象。
#include <stdio.h>
class A
{
public:
void f1()
{
printf("A::f1\n");
}
};
class B
{
public:
void f2()
{
printf("B::f2\n");
a.f1();
}
static A a;//声明静态对象
};
A B::a;//必须在类外定义,否则会链接出错
void main()
{
B b;
b.f2();
getchar();
}
版权声明:本文为csdn_gddf102384398原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。