C++ 何时将在新对象中分配内存
C++ When will be allocated memory in new object?
我想写一个类,它可以容纳9个变量(物理值)。其中 5 个应该每次都在那里,但我想用标志(可选)控制其他 4 个。
我的问题是:如果我在类的私营部门中有 4 个我不使用的变量......是否会为这些分配内存?如果是:我怎样才能避免它?
我想为可选变量动态分配内存。
对于这 4 个变量,您需要将成员变量声明为指针,这些指针在构造函数中初始化为 NULL。然后你根据需要分配和取消分配这些,不要忘记在类分配时确保分配它们。但是,如果你的意图只是记忆增益,你需要根据指向它们的指针的大小来评估这些变量的大小是否有益。通常,它只对复杂的大型数据类型有意义,或者不公开头文件。在 32 位平台中,这 4 个变量只需要指针的 4*4=16 字节,即使它们未被使用也是如此。加上这些指针在使用时指向的内容所消耗的内存。
相关文章:
- 有没有一种方法可以使用placement new将堆叠对象分配给分配的内存
- C++ 如何在将新对象分配给另一个对象时创建新对象
- 为什么我可以在不重载 "=" 运算符的情况下将一个对象分配给另一个对象?
- 为对象分配整数.输出将是什么?
- C++ 使用枚举类对象分配 std::map 值
- 如何在C++中为增加但记住删除先前对象的对象分配唯一标识符
- 我重载了 << 和 = 运算符。为什么当我将一个对象分配给另一个对象并尝试打印它时,我会被打印出来?
- 为什么将两个对象分配给另一个对象后,两个对象不一样?
- 有没有办法在同名类 (c++) 中为对象分配一个指针变量
- 如何使用函数(而不是构造函数)将派生类对象分配给基类指针
- 是否可以使用 malloc 为类对象分配内存?
- 将对象分配给数组C++
- 我们可以在cpp中为对象分配函数吗
- 为模板参数类型中的新对象分配内存
- 我无法将对象分配给对象数组
- 对象分配-成员函数的使用无效错误
- 将派生对象分配给函数内的基类指针
- Arduino ESP32如何将BLEUUID对象分配到字符串中
- Rapidjson将密钥值从一个文档对象分配到另一个文档对象
- 奇怪的对象分配行为C