Exceptional C++ (draft中文版)
基本信息
- 标题: Exceptional C++ (draft中文版)
- 作者: Herb Sutter (原著), 侯捷 (译)
- 页数: 80页
- 大小: 964KB
- 来源: /books/c++/Exceptional C++.7z
- 处理日期: 2026-09-02
- 方法: pdf-inspector文本提取
内容概要
这是Herb Sutter经典著作《Exceptional C++》的draft中文版,由侯捷翻译。本书聚焦C++异常安全性和编程陷阱,通过42个精心设计的问题和解答,帮助程序员深入理解C++的异常安全机制和常见错误。
核心主题
1. 异常安全性
- 强异常安全保证
- 基本异常安全保证
- 不抛出异常保证
2. 资源管理
- RAII(资源获取即初始化)模式
- 智能指针的正确使用
- 内存泄漏防范
3. 模板与泛型编程
- 模板异常处理
- 泛型代码的异常安全
4. 类设计与继承
- 虚函数与异常
- 构造函数中的异常处理
- 析构函数不应抛出异常
关键要点
-
异常安全是C++编程的关键质量属性,需要在设计阶段就考虑
-
RAII是实现异常安全的核心技术,通过构造器获取资源,析构器释放资源
-
**拷贝交换惯用法(copy-and-swap)**是实现强异常安全赋值的经典模式
-
nothrow swap是实现异常安全赋值的关键基础
-
**异常规范(exception specification)**虽然被C++11废弃,但其思想仍然有价值
与其他知识的关联
- Effective C++ - 55条改善程序与设计 - Scott Meyers的经典著作
- Effective Modern C++ - 42条改善C++11与C++14的具体方法 - Herb Sutter的另一部经典
- C++ Concurrency in Action - Anthony Williams - 并发编程中的异常处理
推荐阅读顺序
- 先读《Effective C++》建立基础
- 再读本书深入异常安全
- 最后读《Effective Modern C++》了解C++11/14新特性