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. java去除字符串的空格,换行符,水平制表符,回车

    final private String stringTrimAll(final String input) { if (null == input) return ""; // ...

  2. tf之变量与作用域

    生成变量 tensorflow生成变量有两种方式,Variable 和 get_variable Variable(initial_value=None, trainable=True, collec ...

  3. codeforce949A(顺带vector详细使用介绍)

    A. Zebras time limit per test1 second memory limit per test512 megabytes inputstandard input outputs ...

  4. Linux:进程

    进程 一.简略操作 1.查看进程:ps2.查看进程资源占用量:top3.查看进程关系(进程树):pstree4.查看当前系统信息:uname -a 二.详细操作 1.查看进程:ps 2.查看进程资源占 ...

  5. 2019-03-19-day014-内置函数

    昨日回顾 装饰器 对扩展开放 对修改封闭 不改变原调用方式 def a(c): def b(*args,**kwargs): c(*args,**kwargs) return b a() def a( ...

  6. 【Python】进程3

    #练习: import time from multiprocessing import Pool def run(fn): #fn: 函数参数是数据列表的一个元素 time.sleep(1) ret ...

  7. WEBBASE篇: 第三篇, CSS知识1

    第三篇, CSS知识1 一,CSS 介绍 CSS: Cascading Style Sheets ---样式表 HTML: 搭建网页结构: CSS: 在网页结构基础上进行网页的美化: 二,CSS的使用 ...

  8. 百练6183-人民币支付-2014正式A题

    A:人民币支付 总时间限制:  1000ms 内存限制:  65536kB 描述 从键盘输入一指定金额(以元为单位,如345),然后输出支付该金额的各种面额的人民币数量,显示100元,50元,20元, ...

  9. TJU Problem 2548 Celebrity jeopardy

    下次不要被长题目吓到,其实不一定难. 先看输入输出,再揣测题意. 原文: 2548.   Celebrity jeopardy Time Limit: 1.0 Seconds   Memory Lim ...

  10. nginx防盗链、nginx访问控制、nginx解析php相关配制、nginx代理

    1.nginx防盗链编辑:vim /usr/local/nginx/conf/vhost/test.com.conf写入: location ~* ^.+\.(gif|jpg|png|swf|flv| ...