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

C++ object, difference between dynamic and static

本文关键字:静态 区别 动态 对象 C++      更新时间:2023-10-16

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

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

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

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

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