More C++ Idioms

时间:2021-07-18 09:14:28

Table of Contents

Note: synonyms for each idiom are listed in parentheses.

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