问题 单项选择题

下列程序执行结果是

#include<iostream.h>

class A

public:

int a;

A( ):a(10)tout<<a<<endl;

;

void main( )

A obj1;

A obj2(obj1);

cout<<" "<<obj2.a<<endl;

A.10 10

B.编译错误缺少拷贝构造函数

C.10 随机数

D.随机数随机数

答案

参考答案:A

解析: 本题考察拷贝构造函数的知识。如果类中没有实现拷贝构造函数,则编译器会为其自动生成一个。对于本题这种简单对象,默认生成的拷贝构造函数可以完成数据成员的自动赋值,对于复杂对象,则可能需要显式定义拷贝构造函数。

选择题
单项选择题