【正确答案】
【答案解析】对于类对象数据成员应使用成员初始化列表进行初始化。
程序代码示例如下:
class ABC
{
public:
ABC(int x,int y,int z);
private:
int a;
int b;
int c;
};
class MyClass
{
public:
MyClass():abc(1,2,3){}
private:
ABC abc;
};
上例中,因为ABC有了显式的带参数的构造函数,那么它是无法依靠编译器生成无参构造函数的,所以没有3个int型数据,就无法创建ABC的对象。
ABC类对象是MyClass的成员,如果要初始化对象abc,只能用成员初始化列表,没有其他办法将参数传递给ABC类构造函数。