以下程序的执行结果为( )。 #include<iostream.h> class myClass { Dublic: myClass(int data) ; myClass(){value=0;

admin2010-03-29  26

问题 以下程序的执行结果为(    )。    #include<iostream.h>    class myClass    {    Dublic:        myClass(int  data) ;        myClass(){value=0; };        myClass(myClass  &obj);        void  print(){    cout<<value<<end1;  }        ~myClass(){}    private:        int value;    };    myClass::myClass(int  data) {value=data; }    myClass::myClass(myClass  &Obj)    {        value=obj.value;    }    void main()     {        myClass  a(100);        myClass  b(a) ;        b.print();    }

选项 A、0
B、100
C、10
D、程序编译时出错

答案2

解析 题中类myClass定义了一个拷贝初始化构造函数myClass(myClass &obj)。在主函数中,系统首先自动调用相应的构造函数建立对象,然后调用拷贝构造函数对对象b进行初始化。所以程序最后的输出为100。
转载请注明原文地址:https://jikaoti.com/ti/QiW0FFFM
0

最新回复(0)