问题
单项选择题
下面程序的运行结果是( )。
#include<iostream>
using namespace std;
class TestClass
static int n;
public:
TestClass ()
n++;
static int test()
for(int i=0;i<4;i++)
n++;
return n;
;
int TestClass::n=0;
int main()
cout<< TestClass::test()<<" ";
TestClass c1,c2;
cout<< TestClass::test()<<end1;
return 0;
A) 4, 10
B) 4, 6
C) 0, 6
D) 0, 4
答案
参考答案:A
解析: 在主函数中首先调用TestClass中的test函数输出,类中的n为静态数据成员,可以为所有的对象共享这些数据,这里调用后n等于4。定义对象c1,c2调用构造函数后:n=6,所以主函数再次执行“cout<<TestClass::test()<<end1;”后,n等于10。