单选题
有如下程序: #inchde<iostream> using namespace 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(objm); return 0; } 执行这个程序的输出结果是( )。
【正确答案】
A
【答案解析】解析:本题考查构造函数和复制构造函数以及重载运算符。本题中先后定义了两个对象obj1,obj2,依次输出11,然后定义了对象obj3,调用复制构造函数,输出2,最后执行三次析构函数,输出444。