有如下程序: #include<iostream>usingnamespacestd; classXA{inta; public: staticintb; XA(intaa):a(aa){b++;}~XA(){}intget(){returna;}}; intXA::b=0intmain(){XAdl(1),d2(3); cout<<dl.get{}+d2.get{}+XA

2023-04-24

[单选] 有如下程序:
#include<iostream>
usingnamespacestd;
classXA{
inta;
public:
staticintb;
XA(intaa):a(aa){b++;}
~XA(){}
intget(){returna;}
};
intXA::b=0
intmain(){
XAdl(1),d2(3);
cout<<dl.get{}+d2.get{}+XA::b<<endl;
return0;
}
运行时的输出结果是(  )。

A . 5
B . 6
C . 7
D . 8



参考答案:C

参考解析:

C。【解析】每调用一次get函数时,对新的类A对象进行一次实例化,调用一次构造函数,类A的静态成员变量b便加1。