Table of Contents

Note: synonyms for each idiom are listed in parentheses.

  1. Adapter Template TODO
  2. Address Of                              Readed,没啥用
  3. Algebraic Hierarchy    Readed,没啥用
  4. Attach by Initialization Readed,没啥用
  5. Attorney-Clie  nt 有点用
  6. Barton-Nackman trick
  7. Base-from-Member
  8. Boost muta  nt 有点意思,实现了一个reverse
  9. Calling Virtuals During Initialization 有点意思,用template做的,但是和virtual函数没关系吧,并且必须要求static定义
  10. Capability Query
  11. Checked delete
  12. Clear-and-minimize
  13. Coercion by Member Template
  14. Computational Constructor
  15. Concrete Data Type
  16. Const auto_ptr
  17. Construct On First Use
  18. Construction Tracker
  19. Copy-and-swap For operator=。 有用
  20. Copy-on-write
  21. Intrusive reference counting (Counted Body)
  22. Covariant Return Types TODO
  23. Curiously Recurring Template Pattern (CRTP)
  24. Non-intrusive reference counting (Detached Counted Body) TODO
  25. Empty Base Optimization (EBO)
  26. enable-if               有用,but VS.net not support
  27. Envelope Letter TODO
  28. Erase-Remove        有用
  29. Execute-Around Pointer
  30. Exploding Return Type TODO
  31. Export Guard Macro TODO
  32. Expression-template 有用,表达式模板,用来延迟求值,生成树
  33. Fake Vtable TODO
  34. Fast Pimpl TODO
  35. Final Class    有用
  36. Free Function Allocators
  37. Function Object TODO
  38. Generic Container Idioms 有用,但不大
  39. Hierarchy Generation TODO
  40. Include Guard Macro
  41. Inline Guard Macro
  42. Inner Class
  43. Int-To-Type
  44. Interface Class
  45. Iterator Pair
  46. Making New Friends
  47. Metafunction
  48. Move Constructor
  49. Multi-statement Macro
  50. Member Detector
  51. Named Constructor
  52. Named External Argument TODO
  53. Named Loop (labeled loop)
  54. Named Parameter 有用,
  55. Named Template Parameters TODO
  56. Nifty Counter (Schwarz Counter)
  57. Non-copyable Mixin
  58. Non-member Non-friend Function TODO
  59. Non-throwing swap
  60. Non-Virtual Interface (NVI, Public Overloaded Non-Virtuals Call Protected Non-Overloaded Virtuals)
  61. nullptr
  62. Object Generator
  63. Object Template TODO
  64. Parameterized Base Class (Parameterized Inheritance)
  65. Pimpl (Handle Body, Compilation Firewall, Cheshire Cat)
  66. Policy Clone (Metafunction wrapper)
  67. Policy-based Design TODO
  68. Polymorphic Exception
  69. Polymorphic Value Types TODO
  70. Recursive Type Composition TODO
  71. Requiring or Prohibiting Heap-based Objects
  72. Resource Acquisition Is Initialization (RAII, Execute-Around Object, Scoped Locking)
  73. Resource Return
  74. Return Type Resolver
  75. Runtime Static Initialization Order Idioms
  76. Safe bool
  77. Scope Guard
  78. Substitution Failure Is Not An Error (SFINAE)
  79. Shortening Long Template Names TODO
  80. Shrink-to-fit
  81. Small Object Optimization TODO
  82. Smart Pointer
  83. Storage Class Tracker TODO
  84. Tag Dispatching TODO
  85. Temporary Base Class
  86. Temporary Proxy
  87. The result_of technique TODO
  88. Thin Template
  89. Traits TODO
  90. Type Erasure TODO
  91. Type Generator (Templated Typedef)
  92. Type Safe Enum
  93. Type Selection
  94. Virtual Constructor
  95. Virtual Friend Function

More C++ Idioms的更多相关文章

  1. Kotlin Reference (二) Idioms

    most from reference 一些常用操作 创建单例类 object 数据类data classList.Map.Array的简单操作Lazy延迟加载属性空类型?空类型表达式?..?:.?. ...

  2. English idioms

    a hot potato : speak of an issue(mostly current) which many people are talking about and which is us ...

  3. Java 进阶 hello world! - 中级程序员之路

    Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...

  4. 浅谈WebService的版本兼容性设计

    在现在大型的项目或者软件开发中,一般都会有很多种终端, PC端比如Winform.WebForm,移动端,比如各种Native客户端(iOS, Android, WP),Html5等,我们要满足以上所 ...

  5. 我的公司培训讲义(1):.NET开发规范教程

    这是1年多以前我在公司所做讲座的讲义,现在与园友们分享,欢迎拿去使用.一起讨论.文中有若干思考题,对园友们是小菜一碟.另有设计模式讲义一篇,随后发布.博文上了首页,感谢博客园团队推荐,也感谢所有园友的 ...

  6. [转载]Google Guava官方教程(中文版)

      原文链接  译文链接 译者: 沈义扬,罗立树,何一昕,武祖  校对:方腾飞 引言 Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库,例如:集合 [collections] ...

  7. JCIP chap3 share objects

    "同步"确保了操作的原子性执行,但它还有其它重要的方面:memory visibility.我们不但要确保当一个线程在使用一个对象的时候,其它线程不能修改这个对象,而且还要保证该线 ...

  8. matplotlib 高级用法实例--共享x轴

    http://localhost:8888/notebooks/duanqs/matplotlib_advanced_example.ipynb 我不会弄呀, 刚才从matplotlib文档里吧示例用 ...

  9. java程序性能优化

    一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util ...

随机推荐

  1. 使用ext httpProxy代理获取列表但列表展示不全的问题解决

    今天项目中遇到一个奇葩的事情,使用ext的jsonstore通过httpproxy代理想要获取一个列表,页面显示是有五条数据的但是却只展示了2条,于是各种排查,后台确定无误后开始检查前台,发现浏览器中 ...

  2. Oracle中从控制文件读取的视图

    Oracle中有一些数据字典视图需从控制文件中读取信息,如下所示.用户在数据库打开之前就可以访问这些视图,因为这些视图的内容存储在控制文件中. v$archived_log:归档日志信息,如大小,SC ...

  3. python day14--内置函数二

    主要内容: 1.lamda匿名函数 2.sorted() 3.filter() 4.map() 5.递归函数 一.Lamda匿名函数 语法:lamda:参数:返回值 # 计算n的n次⽅方 def fu ...

  4. mybatis-generator eclipse插件 使用方法

    mybatis-generator eclipse插件离线安装包 网址:http://download.csdn.net/download/gxl442172663/7624747 云盘地址:http ...

  5. 交换机的默认网关(跨网段telnet)

    实验要求:配置一台交换机,并配置默认网关,使不同网段的主机能够远程telnet连接到交换机 拓扑图如下: 交换机配置: enable 进入特权模式 configure terminal 进入全局模式 ...

  6. scp 脚本

    #!/bin/bash ty=$ local_dir=$ remote_ip=$ remote_dir=$ showUsage() { echo -e "\033[31m ty local_ ...

  7. 关于DDOS的主动与智能防御

    -   善守者藏于九地之下    - -  狡兔九窟 - 一.分配足够多的网关服务器 让用户总一个终点,可以进入游戏.多分配,动态分配,定期更新 二.用户分组分级 分组可以根据用户的生成时间, 在线时 ...

  8. Java包、类、数据类型、表达式和标识符

    1.基本数据类型 类型名称 类型长度 取值范围 byte 8位(1字节) -128~127 short 16位(2字节) -32768~32767 int 32位(4字节) -2147483648~2 ...

  9. Django之模版层-语法:标签 {% %}

    标签 {% %} for循环以及for..empty.. <h4>for标签</h4> {% for i in lis %} <p>{{ i }}</p> ...

  10. Ubuntu关闭进入screensaver模式

    /********************************************************************************* * Ubuntu关闭进入scree ...