C++对象,动态和静态的区别

标签 c++

<分区>

下面两种方式创建类对象有什么区别:

class cat 
{
  private: 
     int age; 
  public: 
     cat(); 
}; 


int main(void) 
{
  cat object; // static object 
  cat *pointer = new cat(); // dynamic object 
}

最佳答案

第一个是声明一个静态变量(通常在堆栈上*),该变量将在定义它的代码块末尾消失。

第二个是动态分配一个变量(通常在堆上*),这意味着您可以决定在何处使用 delete[] 释放它(是的,您应该记得这样做)。

关于C++对象,动态和静态的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26776069/

相关文章:

c++ - 应用程序能否为一个小部件的一个属性覆盖 gtk 主题?

C++ 查找所有 .wav 文件

c++ - 当矩阵没有 LU 分解时,如何在 C++ 中求解方阵的线性系统?

c++ - C++中的坐标系

c++ - 我如何在 C++ 中使用 python 库?

c++ - 重新启动游戏并重新实例化全局对象

c++ - 将文件从 Boost filtering_streambuf 解压到 std::vector<char>?

c++ - 调用一个函数而不明确引用它根据输入而改变

c++ - ClockTimer 以秒或毫秒显示值?

c++ - 找不到将数组中元素的数量存储在函数内的 int 变量中的方法