有如下程序: #include using namespaee std; class MyClass{ public: MyClass(int i=0){cout

admin2019-03-05  30

问题 有如下程序:
    #include
    using namespaee std;
    class MyClass{
    public:
    MyClass(int i=0){cout<<1;}
    MyClass(const MyClass&x){cout<<2;}
    MyClass&operator=(const MyClass&x){cout<<3;return*this;}
    ~MyClass(){cout<<4;}
    };
    int main()
    {
    MyClass obj1(1),obj2(2),obj3(obj1);
    return 0;
    }
    执行这个程序的输出结果是(    )。

选项 A、112444
B、11114444
C、121444
D、11314444

答案A

解析 本题考查构造函数和复制构造函数以及重载运算符。本题中先后定义了两个对象obj1,obi2,依次输出11,然后定义了对象obj3,调用复制构造函数,输出2,最后执行三次析构函数,输出444。
转载请注明原文地址:https://jikaoti.com/ti/89t0FFFM
0

随机试题
最新回复(0)