C++ Primer, Fifth Edition
Author: Stanley B. Lippman, Josée Lajoie, Barbara E. Moo.
Part I: The Basics
- 第2章 变量和基本类型 —— const 限定符;constexpr;类型别名;auto;decltype;预处理器
- 第3章 字符串、向量和数组 (1) —— string;范围 for 语句
- 第3章 字符串、向量和数组 (2) —— vector;迭代器
- 第3章 字符串、向量和数组 (3) —— 指针与数组;C 风格字符串;多维数组
- 第4章 表达式 —— 运算符;类型转换:static_cast、const_cast、reinterpret_cast
- 第5章 语句 —— 条件;迭代;跳转;try 语句块与异常处理
- 第6章 函数 (1) —— 局部 static 对象;数组形参;main: 处理命令行选项;可变形参;返回数组指针
- 第6章 函数 (2) —— 函数重载;inline 函数;constexpr 函数;调试:assert,NDEBUG;函数匹配;函数指针
- 第7章 类 (1) —— 抽象数据类型;this;const 成员函数;构造函数;友元;mutable 数据成员
- 第7章 类 (2) —— 委托构造函数;转换构造函数;explicit;聚合类;constexpr 构造函数;类的 static 成员
Part II: The C++ Library
- 第8章 IO库 —— iostream;fstream;stringstream;流的条件状态;unitbuf;cin.tie(&cout)
- 第9章 顺序容器
- 第10章 泛型算法 (1) —— 插入迭代器;back_inserter;谓词;lambda 表达式;bind()
- 第10章 泛型算法 (2) —— 插入迭代器;iostream 迭代器;反向迭代器;链表类型容器特有算法
- 第11章 关联容器
- 第12章 动态内存 (1) —— shared_ptr;new,delete;unique_ptr;weak_ptr
- 第12章 动态内存 (2) —— new []、delete [];allocator 类
Part III: Tools for Class Authors
- 第13章 复制控制 (1) —— 复制构造函数;复制赋值运算符;析构函数;删除的函数;引用计数;复制和交换
- 第13章 复制控制 (2) —— std::move;右值引用;移动构造函数;移动赋值运算符;移动迭代器;引用限定符
- 第14章 重载运算与类型转换 (1) —— 重载运算符:IO,相等,关系,赋值,下标,递增/递减,成员访问
- 第14章 重载运算与类型转换 (2) —— 重载函数调用运算符;函数对象;function;类型转换运算符
- 第15章 面向对象程序设计 (1) —— 继承;动态绑定;虚函数;抽象类
- 第15章 面向对象程序设计 (2) —— protected;using 声明;虚析构函数;继承体系中的复制控制成员
- 第15章 面向对象程序设计 (3) —— 在容器中存储基类指针
- 第16章 模板与泛型编程 (1) —— 函数模板;类模板
- 第16章 模板与泛型编程 (2) —— 类型转换 (type transformation) 模板;引用折叠;转发,std::forward
- 第16章 模板与泛型编程 (3) —— 重载模板;可变参数模板,sizeof… 运算符;模板特例化
Part IV: Advanced Topics
- 第17章 特殊的标准库设施
- 第18章 用于大型程序的工具 (1) —— 异常处理:throw,catch,try,noexcept,exception
- 第18章 用于大型程序的工具 (2) —— 命名空间:namespace,未命名的命名空间,实参相关的查找,重载
- 第18章 用于大型程序的工具 (3) —— 多重继承与虚继承
- 第19章 特殊工具与技术
Appendix
- 附录A 标准库