为什么静态成员定义不能使用关键字“静态”?

时间:2020-01-04 19:10:48

标签: c++ static datamember

#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:错误:定义(而不是声明)静态数据成员时,可能不使用“静态”

请解释为什么我们不能在定义中使用静态。

0 个答案:

没有答案
相关问题