下列程序执行结果是    #include <iostream.h>    class A    {  public:       int a;       A():a(10){cout<<a<<endl;}    };    void main()   

admin2010-06-06  31

问题 下列程序执行结果是    #include <iostream.h>    class A    {  public:       int a;       A():a(10){cout<<a<<endl;}    };    void main()    {    A obj1;         A obj2(obj1);         cout<<" "<<obj2.a<<endl;    }

选项 A、10 10
B、编译错误缺少拷贝构造函数
C、10随机数
D、随机数随机数

答案A

解析 本题考察拷贝构造函数的知识。如果类中没有实现拷贝构造函数,则编译器会为其自动生成一个。对于本题这种简单对象,默认生成的拷贝构造函数可以完成数据成员的自动赋值,对于复杂对象.则可能需要显式定义拷贝构造函数。
转载请注明原文地址:https://kaotiyun.com/show/Ywjp777K
0

最新回复(0)