C ++什么时候会在新对象中分配内存?

时间:2016-02-05 14:06:30

标签: c++ memory memory-management constructor dynamic-allocation

我想写一个类,它可以容纳9个变量(物理值)。 其中5个应该在那里,但我想用旗帜控制其他4个(可选)。

我的问题是:如果我在类的私有扇区中有4个变量,我不使用...将为这些分配内存吗?如果是:我该如何避免呢?

我想为动态可选变量分配内存。

1 个答案:

答案 0 :(得分:0)

对于这4个变量,您需要将成员变量声明为指针,这些指针在构造函数中初始化为NULL。然后你根据自己的需要分配和解除分配,不要忘记确定在课堂上解除分配。但是,如果你的意图只是一个内存增益,你需要根据它们的指针sizeof来评估这些变量的大小是否有益。通常,它仅对复杂的大型数据类型有意义,或者不公开头文件。在32位平台中,即使不使用指针,这4个变量也只需要4 * 4 = 16个字节用于指针。加上这些指针在使用时所指向的内容消耗的内存。

相关问题