Skip to content

第十章 智能指针与资源管理

在上一章中,我们学习了原生的指针和动态内存分配(使用 newdelete)。虽然原生指针提供了对内存的绝对控制权,但正如我们所看到的,它们也非常容易导致内存泄漏、悬垂指针等严重错误。

从 C++11 开始,语言标准强力推荐使用「智能指针(Smart Pointers)」来代替原生指针管理动态内存。本章将介绍现代 C++ 中最核心的内存管理哲学——RAII,以及标准库提供的智能指针组件。

本章内容包括:

  1. RAII 原则:现代 C++ 资源管理的核心基石。
  2. unique_ptr:独占所有权的智能指针(最常用)。
  3. shared_ptr 与 weak_ptr:共享所有权的智能指针及其循环引用解决方案。
  4. 移动语义与右值引用:现代 C++ 性能优化的关键特性,也是智能指针实现所有权转移的基础。

掌握本章内容后,你将能够写出更安全、更高效、几乎不会发生内存泄漏的现代 C++ 代码。