#include <iostream>
using namespace std;
class Player
{
private:
int id;
static int next_id;
public:
int getID() { return id; }
Player() { id = next_id++; }
};
static int Player::next_id = 1;
int main()
{
Player p1;
Player p2;
Player p3;
cout << p1.getID() << " ";
cout << p2.getID() << " ";
cout << p3.getID();
return 0;
}
输出:
prog.cpp:13:20:错误:定义(而不是声明)静态数据成员时,可能不使用“静态”
请解释为什么我们不能在定义中使用静态。