单选题
下面程序的运行结果为______。
#include<iostream>
using namespace std;
class A
{
static int n;
public:
A(){n=1;}
A(int num){n=num;}
void print(){cout<<n;}
};
int A::n=2;
void main()
{
A a, b(3);
a.print();
b.print();
cout<<endl;
}
A、
11
B、
13
C、
23
D、
33
【正确答案】
D
【答案解析】
[解析] 两个构造函数A()和A(int)中的n都被解析为类A的静态变量n。最后一次改变静态变量的是b(3)的构造函数,将n设置为3。A类的print()函数的n也指向静态变量n,因此结果是33。
提交答案
关闭