C++静态关键字问题1

预测以下C++程序的输出。

null

#include <iostream>
using namespace std;
class Test
{
static int x;
public :
Test() { x++; }
static int getX() { return x;}
};
int Test::x = 0;
int main()
{
cout << Test::getX() << " " ;
Test t[5];
cout << Test::getX();
}


(A) 0 0 (B) 5 5 (C) 0 5 (D) 编译错误 答复: (C) 说明: 静态函数可以在没有任何对象的情况下调用。因此,调用“Test::getX()”就可以了。

由于x被初始化为0,因此对getX()的第一次调用返回0。注意构造函数中的语句x++。当创建一个包含5个对象的数组时,构造函数被调用5次。因此,在下一次调用getX()之前,x将增加到5。 这个问题的小测验

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享