有如下程序: #include using namespace std; class A { public: static int a; void init() { a = 1; } A(int a = 2) { init(); a++

admin2019-07-10  29

问题 有如下程序:
#include
using namespace std;
class A {
public:
   static int a;
   void init() { a = 1; }
   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数据成员先是赋值为0,当定义了对象obj时,执行构造函数,将a的值变为了1,所以输出1。
转载请注明原文地址:https://jikaoti.com/ti/GBA0FFFM
0

最新回复(0)