C++ 内存管理

内存管理

内存管理是控制程序使用多少内存以及如何使用内存的过程。这包括在不再需要时创建、使用和释放内存。

C++ 中的内存

当您在 C++ 中创建一个变量时,编译器会自动在内存中为其保留空间。

例如:

int myNumber = 10;

上面这行代码告诉程序:"我需要空间来存储一个整数。" C++ 会自动处理此内存,因此在这种情况下,您无需担心内存管理。

获取内存大小

您可以使用 sizeof 运算符检查变量类型使用多少内存:

实例

#include <iostream>
using namespace std;

int main() {
  int myInt;
  float myFloat;
  double myDouble;
  char myChar;

  cout << sizeof(myInt) << "\n";     // 4 字节 (通常)
  cout << sizeof(myFloat) << "\n";   // 4 字节
  cout << sizeof(myDouble) << "\n";  // 8 字节
  cout << sizeof(myChar) << "\n";    // 1 字节
  return 0;
}

亲自试一试

了解类型的大小有助于您编写更高效的代码,尤其是在较大的程序中。

您必须自己管理内存吗?

有时需要,有时不需要。

  • 对于普通变量(如 int x = 10;),C++ 会为您处理内存。
  • 但是,当您想在程序运行时手动创建内存时(例如,基于用户输入),您需要自己管理它,并在完成后清理它。

如果您的程序使用太多内存,或者忘记清理不再需要的内存,可能会导致性能下降甚至崩溃

这就是理解内存很重要的原因。它能让您拥有更多控制权,并帮助避免常见错误。

接下来是什么?

在 C++ 中,您可以使用指针直接访问和更改内存。

这很强大,但也有风险。如果您错误地使用指针,可能会意外更改或损坏程序内存的其他部分。

在下一章中,您将学习如何使用 new 关键字手动创建内存,以及如何使用 delete 释放它。