有如下程序: #include<iostream> using namespace std; class ONE{ int c; public: 0NE():c(0){cout<<1;} ONE(in

admin2017-11-28  30

问题 有如下程序:
    #include<iostream>
    using namespace std;
    class ONE{
    int c;
    public:
    0NE():c(0){cout<<1;}
    ONE(int n):c(n){cout<<2;}
    };
    class TWO {
    ONE one1;
   ONE one2;
    public:
    TWO(int m):one2(m){cout<<3;}
    };
    int main(){
    TWO t(4);
     return 0;
    }
    运行时的输出结果是(    )。

选项 A、3
B、23
C、123
D、213

答案C

解析 由类TWO的定义可知,其成员为类ONE的两个对象one1和one2。所以在主函数中构建类TWO的对象t(4)时,先后调用类ONE的构造函数ONE():c(0){cout<<1;}和ONE(int n):c(n){cout<<2;}输出12,然后再调用类TWO的构造函数TWO(int  m):one2(m){cout<<3;},输出3。
转载请注明原文地址:https://kaotiyun.com/show/sCAp777K
0

最新回复(0)