有如下程序: #include using namespace std; class ONE{ int c; public: ONE():c(0){cout

admin2019-06-12  20

问题 有如下程序:  
    #include
    using namespace std;  
    class ONE{
          int c;
    public:
          ONE():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的两个对象onel和one2。所以在主函数中构建类TWO的对象t(4)时,先后调用类ONE的构造函数ONE():c(0){cout<<1;}和ONE(int n):c(n){cout<<2;}输出12,然后再调用类TWO的构造函数TWO(intm):one2(m){cout<<3;},输出3。
转载请注明原文地址:https://jikaoti.com/ti/nNA0FFFM
0

最新回复(0)