问题
单项选择题
有以下类定义 class MyClass { private:int id;char gender;char*phone; public:MyClass():id(0),gender(’#’),phone(NULL){}MyClass(int no,char ge=’#’,char*ph=NULL){id=no;gender=ge;phone=ph;} }; 下列类对象定义语句中错误的是
A.MyClass myObj;
B.MyClass myObj(11,"13301111155");
C.MyClass myObj(12,’m’);
D.MyClass myObj(12);
答案
参考答案:B
解析: 本题考核构造函数的应用。对象建立用初始化列表对数据成员进行时,列表中的参数类型要与构造函数中形参类型一致。B选项中第二个参数为"13301111155"是字符串,而构造函数中第二个形参为char型,两者不一致造成错误。