August 2021
Intermediate to advanced
450 pages
6h 57m
Chinese
[1]当你需要一个具有constexpr大小的序列时,使用array;34.2.1节。
[2]优先选择array而不是内置数组;34.2.1节。
[3]当你需要N个二进制位而N又不一定是整数类型的位宽时,使用bitset;34.2.2节。
[4]避免使用vector<bool>;34.2.3节。
[5]当使用pair时,考虑使用make_pair()进行类型推断;34.2.4.1节。
[6]当使用tuple时,考虑使用make_tuple()进行类型推断;34.2.4.2节。
[7]使用unique_ptr表示互斥所有权;34.3.1节。
[8]使用shared_ptr表示共享所有权;34.3.2节。
[9]尽量不使用weak_ptr;34.3.3节。
[10](仅)当由于逻辑上或性能上的原因,常用的new/delete语义不能满足需求时才使用分配器;34.4节。
[11]优先选择有特定语义的资源句柄而不是智能指针;34.5节。
[12]优先选择unique_ptr而不是shared_ptr;34.5节。
[13]优先选择智能指针而不是垃圾收集;34.5节。
[14]为通用资源的管理提供一致、完整的策略;34.5节。
[15]在大量使用指针的程序中处理泄漏问题,垃圾收集是非常有用的;34.5节。
[16]垃圾收集是可选的;34.5节。
[17]不要伪装指针(即使你不使用垃圾收集);34.5节。
[18]如果你使用垃圾收集,使用declare_no_pointers()令垃圾收集器忽略不可能包含指针的数据;见34.5节。
[19]不要随意使用未初始化内存,除非你确实必须这么做;34.6节。
Read now
Unlock full access