更多 C++ 习语
外观
C++ 确实已经变得太“专家友好”了 -- Bjarne Stroustrup,编程问题,技术评论,2006 年 11 月。 Stroustrup 的说法是正确的,因为专家非常熟悉该语言中的习语。 随着程序员理解的习语数量的增加,该语言对他们来说变得更加友好。 这本开放内容书籍的目的是向对 C++ 有中等了解的程序员介绍现代 C++ 习语,并帮助提高他们的知识,使 C++ 对他们来说感觉更加友好。 它旨在成为专家 C++ 程序员在使用 C++ 进行编程或设计时经常使用的可重用习语的详尽目录。 这项工作旨在将他们的技术和词汇汇集到一个单一作品中。 本书以简洁的格式描述了习语:名称-意图-动机-解决方案-参考,这简洁明了,有助于加快学习速度。 由于其本质,习语往往在 C++ 社区和出版物中多次出现。 我们尽力参考原始来源,如果发现参考不完整或不正确,请随时建议或改进。 欢迎世界将可重用的 C++ 知识片段编目(类似于 GoF 关于设计模式的书籍)。 这里的目标是首先建立一个现代 C++ 习语的详尽目录,然后将其发展成为一种习语语言,就像一种模式语言一样。 最后,本书的内容可以在GNU 自由文档许可证的条款下重新发布。 面向:任何具有 C++ 和支持语言范式中级知识的人 |
作者 | 赞赏 | 作者指南 | GNU 自由文档许可证
注意:每个习语的同义词列在括号中。
- 无环访问者模式 TODO
- 取地址
- 代数层次结构
- 通过初始化附加
- 律师-客户
- Barton-Nackman 技巧
- 从成员派生基类
- Boost 变异体
- 在初始化期间调用虚函数
- 功能查询
- 检查删除
- 清除和最小化
- 通过成员模板强制转换
- 计算构造函数
- 具体数据类型
- 第一次使用时构造
- 构造跟踪器
- 复制-交换
- 写时复制
- 线程安全的写时复制
- 侵入式引用计数(计数主体)
- 协变返回类型 TODO
- 奇异递归模板模式(CRTP)
- 弃用和删除 TODO
- 空基优化(EBO)
- enable-if
- 擦除-移除
- 执行绕过指针
- 爆炸返回类型 TODO
- 导出保护宏 TODO
- 表达式模板
- 伪虚表 TODO
- 快速PIMPL TODO
- 最终类
- 自由函数分配器
- 函数对象 TODO
- 函数中毒 TODO
- 泛型容器习语
- 层次结构生成 TODO
- 隐式转换 TODO
- 包含保护宏
- 内联保护宏
- 内部类
- Int-To-Type
- 接口类
- 迭代器对
- 结识新朋友
- 元函数
- 移动构造函数
- 多语句宏
- 成员检测器
- 命名构造函数
- 命名外部参数 TODO
- 命名循环(带标签的循环)
- 命名参数
- 命名模板参数 TODO
- 巧妙计数器(Schwarz 计数器)
- 不可复制混合
- 非成员非友元函数 TODO
- 非抛出交换
- 非虚接口(NVI,公共重载非虚调用受保护非重载虚函数)
- nullptr
- 对象生成器
- 对象模板 TODO
- 参数化基类(参数化继承)
- Pimpl(句柄体、编译防火墙、柴郡猫)
- 策略克隆(元函数包装器)
- 基于策略的设计 TODO
- 多态异常
- 多态值类型
- 递归类型组合 TODO
- 要求或禁止基于堆的对象
- 资源获取即初始化(RAII,执行绕过对象,作用域锁定)
- 资源返回
- 返回类型解析器
- 运行时静态初始化顺序习惯用法
- 安全布尔值
- 范围守卫
- 替换失败不是错误 (SFINAE)
- 缩短长模板名称 待办事项
- 缩小到适合
- 小对象优化 待办事项
- 智能指针
- 存储类跟踪器 待办事项
- 标签分派
- 临时基类
- 临时代理
- result_of 技术 待办事项
- 薄模板
- 线程安全接口 待办事项
- 特性
- 类型擦除
- 类型生成器 (模板类型定义)
- 类型安全枚举
- 类型选择
- 虚构造函数
- 虚友元函数
高级习惯用法
[edit | edit source]以下是一些更高级的 C++ 习惯用法。
- 信封模式 待办事项
已弃用的习惯用法
[edit | edit source]