若有一个Myclass类,则执行语句“MyClass obj1,obj2[2], *p;”后,自动调用该类的构造函数( )次。

若有一个Myclass类,则执行语句“MyClass obj1,obj2[2], *p;”后,自动调用该类的构造函数( )次。


【正确答案】:3
【题目解析】:

创建对象obj1时,调用一次构造函数。

obj2[2]是对象数组,数组中每个元素都需要调用无参的构造函数进行初始化,故创建对象,obj2[2]时,因为这是一个含有2个元素的数组,所以需要调用2次构造函数。

而对于指针p,仅是说明了这个指针,并未与对象相关,所以并不调用构造函数。

故一共调用1+2=3次。


Top