#include
using namespace std;
class Player
{
private:
int id;
static int next_id;
public:
int getID() { return id; }
Player() { id = next_id++; }
};
int Player::next_id = 1;
int main()
{
Player p1;
Player p2;
Player p3;
cout << p1.getID() << " ";
cout << p2.getID() << " ";
cout << p3.getID();
return 0;
}
(A)编译器错误
(B) 1 2 3
(C) 1 1 1
(D) 3 3 3
(E) 0 0 0答案: (B)
说明:如果将成员变量声明为静态,则该类的所有对象都可以访问该变量的单个实例。静态变量有时称为类变量,类字段或类范围的字段,因为它们不属于特定对象。他们属于阶级。
在上面的代码中,静态变量next_id用于为所有对象分配唯一的ID。
这个问题的测验
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。