问题
单项选择题
有如下程序:
#include<iostream>
using namespace std;
class A
public:
static int a;
void init( )a=l;
A(int a=2)init( );a++;
;
int A::a=0;
A obj;
int main( )
cout<<obj.a;
return 0;
程序的输出结果是
A.0
B.1
C.2
D.3
答案
参考答案:B
解析: 构造函数A中的形参a对静态成员a形成了屏蔽,故只有在成员函数init( )中才将静态成员a的值修改为1,而在其他成员函数中没发生变换,故obj.a=1。