我有一个全局成员数据对象,像这样在 header 中定义(对于类 MyMainObj)。
class MyMainObj
{
MyDataObj obj;
}
MyDataObj
有一个默认构造函数。
MyDataObj
的构造函数何时被调用?
它是作为创建 MyMainObj
的一部分调用的吗?
最佳答案
在这种情况下,MyDataObj 不是 MyMainObj 的成员,它是一个局部变量。
但是,数据成员的构造函数是在类的构造函数中调用的。每个成员的默认构造函数在执行到达构造函数的第一行之前被调用,除非您使用初始化列表显式指定构造函数,在这种情况下调用该构造函数相反。
关于c++ - 什么时候调用成员数据构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1573806/