没有构造函数的类对象的动态分配

时间:2018-11-27 14:58:57

标签: c++

如何动态分配没有定义的构造函数的类对象?

我尝试过:

A * newPtr = new A();

但是它给了我gdb某种内存泄漏。

干杯!

1 个答案:

答案 0 :(得分:4)

如果没有定义的构造函数,并且标准规则不允许,那么您会得到隐式声明的 default constructor,否则您的代码将根本无法编译。

因此,如果您没有定义任何构造函数,并且您的代码可以编译,则可以确保声明并定义了默认构造函数(因此您实际上有一个构造函数)。

之所以泄漏,是因为您需要delete指针以从堆中释放其内存。