类的静态成员在类中仅仅是声明,需要在类外部定义。类似于普通静态变量的定义,应当把它放在全局作用域中。
class Account {
public:
Account() {
record();
}
static int num;
private:
void record();
};
void Account::record() {
++num;
}
int Account::num = 0;
int main(int argc, char **argv)
{
for (auto i = 0; i < 3; ++i) {
Account temp;
}
cout << Account::num << endl;
return 0;
}
Account类的对象一共被创建了三次。