C++对象,动态和静态的区别
C++ object, difference between dynamic and static
用以下两种方式创建类对象有什么区别:
class cat
{
private:
int age;
public:
cat();
};
int main(void)
{
cat object; // static object
cat *pointer = new cat(); // dynamic object
}
第一个是声明一个静态变量(通常在堆栈*上),该变量将在定义它的代码块的末尾终止。
第二种是动态分配一个变量(通常在堆*上),这意味着你可以通过delete[]决定在哪里释放它(是的,你应该记得这样做)。
相关文章:
- 在 .h 文件中的类中声明静态变量和在.cpp文件中声明"global"变量有什么区别
- 动态分配的数组和静态数组之间的区别
- C 函数中的静态和 C++ 中类中的静态之间的区别?
- 有没有办法声明一个公共静态常量,该常量将使用 constexpr 在源文件中定义(有什么区别)?
- 打印一个带有静态 int 的函数,有一个 std::cout 和多个 std::cout 有什么区别?
- c++ 类中的静态常量变量和常量变量在存储方面是否有区别
- 类中的静态成员变量和C++中的全局变量有什么区别?
- 静态模板类成员函数的这两个调用之间有什么区别?
- C/C++ 中的常量数组和静态常量数组有什么区别
- 返回本地静态的函数和返回静态成员的函数之间有什么区别(对象大小、性能等)?
- 将静态库链接行添加到我的QT项目文件没有区别
- GCC 警告未使用的静态函数,但不警告静态内联:是否有实际区别?
- 类中私有静态方法和私有方法之间的区别
- 声明静态对象和指向静态对象的指针之间的区别
- 指向静态变量的指针和指向某个变量的静态指针之间的区别
- 静态对象在类中的重要性以及它们与一般对象的区别
- 静态 int 和 int 在 C++ 类中的区别
- 静态演员和新的区别
- C 中静态全局和非静态全局标识符之间有什么区别?
- 使用指针和使用静态对象实现单例实现之间的区别