/projecte eclipse/TI/data/2012-documentos/64/2012-64-022.html
HTML | 230 lines | 228 code | 2 blank | 0 comment | 0 complexity | 8d8a9faafe50ded81a5e5c8d9f1c931c MD5 | raw file
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html lang="en" dir="ltr" class="client-nojs" xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>More C++ Idioms - Wikibooks, open books for an open world</title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <meta http-equiv="Content-Style-Type" content="text/css" />
- <meta name="generator" content="MediaWiki 1.19wmf1" />
- <link rel="alternate" type="application/x-wiki" title="Edit" href="/w/index.php?title=More_C%2B%2B_Idioms&action=edit" />
- <link rel="edit" title="Edit" href="/w/index.php?title=More_C%2B%2B_Idioms&action=edit" />
- <link rel="shortcut icon" href="/favicon.ico" />
- <link rel="search" type="application/opensearchdescription+xml" href="/w/opensearch_desc.php" title="Wikibooks (en)" />
- <link rel="EditURI" type="application/rsd+xml" href="//en.wikibooks.org/w/api.php?action=rsd" />
- <link rel="copyright" href="//creativecommons.org/licenses/by-sa/3.0/" />
- <link rel="alternate" type="application/atom+xml" title="Wikibooks Atom feed" href="/w/index.php?title=Special:RecentChanges&feed=atom" />
- <link rel="stylesheet" href="//bits.wikimedia.org/en.wikibooks.org/load.php?debug=false&lang=en&modules=ext.flaggedRevs.basic%7Cext.gadget.extlinks%7Cext.wikihiero%7Cmediawiki.legacy.commonPrint%2Cshared%7Cskins.vector&only=styles&skin=vector&*" type="text/css" media="all" />
- <link rel="stylesheet" href="//bits.wikimedia.org/w/extensions-1.19/ReaderFeedback/readerfeedback.css?1" type="text/css" media="all" /><meta name="ResourceLoaderDynamicStyles" content="" />
- <link rel="stylesheet" href="//bits.wikimedia.org/en.wikibooks.org/load.php?debug=false&lang=en&modules=site&only=styles&skin=vector&*" type="text/css" media="all" />
- <style type="text/css" media="all">a:lang(ar),a:lang(ckb),a:lang(fa),a:lang(kk-arab),a:lang(mzn),a:lang(ps),a:lang(ur){text-decoration:none}a.new,#quickbar a.new{color:#ba0000}
- /* cache key: enwikibooks:resourceloader:filter:minify-css:7:c88e2bcd56513749bec09a7e29cb3ffa */</style>
- <script src="//bits.wikimedia.org/en.wikibooks.org/load.php?debug=false&lang=en&modules=startup&only=scripts&skin=vector&*" type="text/javascript"></script>
- <script type="text/javascript">if(window.mw){
- mw.config.set({"wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"More_C++_Idioms","wgTitle":"More C++ Idioms","wgCurRevisionId":2280206,"wgArticleId":128175,"wgIsArticle":true,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["More C++ Idioms","Books with print version","Advanced reading level","C++ programming language","C++ programming language/all books","Computer programming languages/all books","Computer programming/all books","Computer science/all books","Computing/all books","Books by subject/all books","Science/all books","Prerequisite/C++","Half-finished books","Books by completion status/all books","Alphabetical/M"],"wgBreakFrames":false,"wgPageContentLanguage":"en","wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgRelevantPageName":"More_C++_Idioms","wgRestrictionEdit":[],"wgRestrictionMove":[],"wgSearchNamespaces":[0,4,112],"wgVectorEnabledModules":{"collapsiblenav":true,"collapsibletabs":true,"editwarning":true,"expandablesearch":false,"footercleanup":false,"sectioneditlinks":false,"simplesearch":true,"experiments":true},"wgWikiEditorEnabledModules":{"toolbar":true,"dialogs":true,"hidesig":true,"templateEditor":false,"templates":false,"preview":false,"previewDialog":false,"publish":false,"toc":false},"wgFeedbackParams":{"tags":{"reliability":3,"completeness":2,"npov":2,"presentation":1}},"wgAjaxFeedback":{"sendingMsg":"Submitting …","sentMsg":"Thank you!"},"wgFlaggedRevsParams":{"tags":{"value":{"levels":3,"quality":2,"pristine":3}}},"wgStableRevisionId":2280206,"wgCategoryTreePageCategoryOptions":"{\"mode\":0,\"hideprefix\":20,\"showcount\":true,\"namespaces\":false}","Geo":{"city":"","country":""},"wgNoticeProject":"wikibooks"});
- }</script><script type="text/javascript">if(window.mw){
- mw.loader.implement("user.options",function($){mw.user.options.set({"ccmeonemails":0,"cols":80,"date":"default","diffonly":0,"disablemail":0,"disablesuggest":0,"editfont":"default","editondblclick":0,"editsection":1,"editsectiononrightclick":0,"enotifminoredits":0,"enotifrevealaddr":0,"enotifusertalkpages":1,"enotifwatchlistpages":0,"extendwatchlist":0,"externaldiff":0,"externaleditor":0,"fancysig":0,"forceeditsummary":0,"gender":"unknown","hideminor":0,"hidepatrolled":0,"highlightbroken":1,"imagesize":2,"justify":0,"math":0,"minordefault":0,"newpageshidepatrolled":0,"nocache":0,"noconvertlink":0,"norollbackdiff":0,"numberheadings":0,"previewonfirst":0,"previewontop":1,"quickbar":5,"rcdays":7,"rclimit":50,"rememberpassword":0,"rows":25,"searchlimit":20,"showhiddencats":false,"showjumplinks":1,"shownumberswatching":1,"showtoc":1,"showtoolbar":1,"skin":"vector","stubthreshold":0,"thumbsize":4,"underline":2,"uselivepreview":0,"usenewrc":0,"watchcreations":1,"watchdefault":0,
- "watchdeletion":0,"watchlistdays":3,"watchlisthideanons":0,"watchlisthidebots":0,"watchlisthideliu":0,"watchlisthideminor":0,"watchlisthideown":0,"watchlisthidepatrolled":0,"watchmoves":0,"wllimit":250,"flaggedrevssimpleui":0,"flaggedrevsstable":0,"flaggedrevseditdiffs":true,"flaggedrevsviewdiffs":false,"vector-simplesearch":1,"useeditwarning":1,"vector-collapsiblenav":1,"usebetatoolbar":1,"usebetatoolbar-cgd":1,"variant":"en","language":"en","searchNs0":true,"searchNs1":false,"searchNs2":false,"searchNs3":false,"searchNs4":true,"searchNs5":false,"searchNs6":false,"searchNs7":false,"searchNs8":false,"searchNs9":false,"searchNs10":false,"searchNs11":false,"searchNs12":false,"searchNs13":false,"searchNs14":false,"searchNs15":false,"searchNs102":false,"searchNs103":false,"searchNs108":false,"searchNs109":false,"searchNs110":false,"searchNs111":false,"searchNs112":true,"searchNs113":false,"gadget-extlinks":1,"gadget-commons-file":1,"gadget-toolboxcompat":1});;},{},{});mw.loader.implement(
- "user.tokens",function($){mw.user.tokens.set({"editToken":"+\\","watchToken":false});;},{},{});
- /* cache key: enwikibooks:resourceloader:filter:minify-js:7:27fad4ec6adeee2d6ea3cb1d017dce32 */
- }</script>
- <script type="text/javascript">if(window.mw){
- mw.loader.load(["mediawiki.page.startup","mediawiki.legacy.wikibits","mediawiki.legacy.ajax"]);
- }</script>
- <!--[if lt IE 7]><style type="text/css">body{behavior:url("/w/skins-1.19/vector/csshover.min.htc")}</style><![endif]--></head>
- <body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-More_C_Idioms skin-vector action-view">
- <div id="mw-page-base" class="noprint"></div>
- <div id="mw-head-base" class="noprint"></div>
- <!-- content -->
- <div id="content" class="mw-body">
- <a id="top"></a>
- <div id="mw-js-message" style="display:none;"></div>
- <!-- sitenotice -->
- <div id="siteNotice"><!-- centralNotice loads here --></div>
- <!-- /sitenotice -->
- <!-- firstHeading -->
- <h1 id="firstHeading" class="firstHeading">
- <span dir="auto"><span style="display:block;text-align:center;font-size:300%;font-style:italic;line-height:1em;">More C++ Idioms</span></span>
- </h1>
- <!-- /firstHeading -->
- <!-- bodyContent -->
- <div id="bodyContent">
- <!-- tagline -->
- <div id="siteSub">From Wikibooks, open books for an open world</div>
- <!-- /tagline -->
- <!-- subtitle -->
- <div id="contentSub"><div id="mw-fr-revisiontag" class="flaggedrevs_basic plainlinks noprint"><img class="flaggedrevs-icon" src="//bits.wikimedia.org/w/extensions-1.19/FlaggedRevs/frontend/modules/img/1.png" alt="Unreviewed changes are displayed on this page" title="Unreviewed changes are displayed on this page" />The <a class="external text" href="//en.wikibooks.org/w/index.php?title=More_C%2B%2B_Idioms&stable=1">latest reviewed version</a> was <a class="external text" href="//en.wikibooks.org/w/index.php?title=Special:Log&type=review&page=More_C%2B%2B_Idioms">checked</a> on <i>4 March 2012</i>. There are <a class="external text" href="//en.wikibooks.org/w/index.php?title=More_C%2B%2B_Idioms&oldid=2280206&diff=cur&diffonly=0">template/file changes</a> awaiting review.</div>
- </div>
- <!-- /subtitle -->
- <!-- jumpto -->
- <div id="jump-to-nav" class="mw-jump">
- Jump to: <a href="#mw-head">navigation</a>,
- <a href="#p-search">search</a>
- </div>
- <!-- /jumpto -->
- <!-- bodycontent -->
- <div id="mw-content-text" lang="en" dir="ltr" class="mw-content-ltr"><h2><span class="editsection">[<a href="/w/index.php?title=More_C%2B%2B_Idioms/Preface&action=edit&section=T-1" title="More C++ Idioms/Preface">edit</a>]</span> <span class="mw-headline" id="Preface">Preface</span></h2>
- <table border="0" cellspacing="0" cellpadding="5" align="center">
- <tr>
- <td><a href="/wiki/File:More_CPP_Idioms.jpg" class="image" title="More C++ Idioms"><img alt="More C++ Idioms" src="//upload.wikimedia.org/wikibooks/en/thumb/9/9c/More_CPP_Idioms.jpg/190px-More_CPP_Idioms.jpg" width="190" height="273" /></a></td>
- <td><b>C++ has indeed become too "expert friendly"</b> -- Bjarne Stroustrup, <a rel="nofollow" class="external text" href="http://www.technologyreview.com/Infotech/17831"><i>The Problem with Programming</i></a>, Technology Review, Nov 2006.
- <p>Stroustrup's saying is true because experts are intimately familiar with the idioms in the language. With the increase in the idioms a programmer understands, the language becomes friendlier to him or her. The objective of this open content book is to present modern C++ idioms to programmers who have moderate level of familiarity with C++, and help elevate their knowledge so that C++ feels much friendlier to them. It is designed to be an exhaustive catalog of reusable idioms that expert C++ programmers often use while programming or designing using C++. This is an effort to capture their techniques and vocabulary into a single work. This book describes the idioms in a regular format: <i>Name-Intent-Motivation-Solution-References</i>, which is succinct and helps speed learning. By their nature, idioms tend to have appeared in the C++ community and in published work many times. An effort has been made to refer to the original source(s) where possible; if you find a reference incomplete or incorrect, please feel free to suggest or make improvements.</p>
- <p>The world is invited to catalog reusable pieces of C++ knowledge (similar to the book on design patterns by GoF). The goal here is to first build an exhaustive catalog of modern C++ idioms and later evolve it into an idiom language, just like a pattern language. Finally, the contents of this book can be redistributed under the terms of the <a href="/wiki/More_C%2B%2B_Idioms/GNUFDL" title="More C++ Idioms/GNUFDL">GNU Free Documentation License</a>.</p>
- <p><b>Aimed toward:</b> Anyone with an intermediate level of knowledge in C++ and supported language paradigms</p>
- </td>
- </tr>
- </table>
- <h2><span class="editsection">[<a href="/w/index.php?title=More_C%2B%2B_Idioms&action=edit&section=1" title="Edit section: More Information">edit</a>]</span> <span class="mw-headline" id="More_Information">More Information</span></h2>
- <table class="plainlinks noprint messagebox growth" style="width:250px; float:right; clear:right; margin:0px; margin-left:10px;">
- <tr style="vertical-align:middle;">
- <td style="padding:0.1em; text-align:center; vertical-align:middle; width:45px; border:none;"><img alt="Printer.svg" src="//upload.wikimedia.org/wikipedia/commons/thumb/2/23/Printer.svg/40px-Printer.svg.png" width="40" height="40" /></td>
- <td style="color:black; text-align:left; vertical-align:middle; padding:0.5em; padding-left:0em; border:none;">
- <p>A <i><b><a href="/wiki/More_C%2B%2B_Idioms/Print_Version" title="More C++ Idioms/Print Version">printable version</a></b></i> of More C++ Idioms is available. <small>(<a class="external text" href="//en.wikibooks.org/w/index.php?title=More_C%2B%2B_Idioms/Print_Version&action=edit">edit it</a>)</small></p>
- </td>
- </tr>
- </table>
- <table class="plainlinks noprint messagebox notice" style="width:250px; float:right; clear:right; margin:0px; margin-left:10px;">
- <tr style="vertical-align:middle;">
- <td style="padding:0.1em; text-align:center; vertical-align:middle; width:45px; border:none;"><img alt="Warning icon WikiBooks.svg" src="//upload.wikimedia.org/wikipedia/commons/thumb/1/1f/Warning_icon_WikiBooks.svg/40px-Warning_icon_WikiBooks.svg.png" width="40" height="33" /></td>
- <td style="color:black; text-align:left; vertical-align:middle; padding:0.5em; padding-left:0em; border:none;">
- <p>This book is intended for <b><a href="/wiki/Wikibooks:Reading_Levels" title="Wikibooks:Reading Levels">advanced</a></b> readers.</p>
- </td>
- </tr>
- </table>
- <table class="plainlinks noprint messagebox notice" style="width:250px; float:right; clear:right; margin:0px; margin-left:10px;">
- <tr style="vertical-align:middle;">
- <td style="padding:0.1em; text-align:center; vertical-align:middle; width:45px; border:none;"><img alt="Warning icon WikiBooks.svg" src="//upload.wikimedia.org/wikipedia/commons/thumb/1/1f/Warning_icon_WikiBooks.svg/40px-Warning_icon_WikiBooks.svg.png" width="40" height="33" /></td>
- <td style="color:black; text-align:left; vertical-align:middle; padding:0.5em; padding-left:0em; border:none;">
- <p>This book requires <b><a href="/wiki/C%2B%2B" title="C++" class="mw-redirect">C++</a></b> as a corequisite.</p>
- </td>
- </tr>
- </table>
- <p><a href="/wiki/More_C%2B%2B_Idioms/Authors" title="More C++ Idioms/Authors">Authors</a> | <a href="/wiki/More_C%2B%2B_Idioms/Praise" title="More C++ Idioms/Praise">Praise</a> | <a href="/wiki/More_C%2B%2B_Idioms/Guidelines" title="More C++ Idioms/Guidelines">Guidelines for Authors</a> | <a href="/wiki/More_C%2B%2B_Idioms/GNUFDL" title="More C++ Idioms/GNUFDL">GNU Free Documentation License</a><br /></p>
- <table border="1" cellpadding="5" cellspacing="0">
- <tr>
- <td><a href="/wiki/File:Feed-icon.svg" class="image" title="RSS Logo"><img alt="RSS Logo" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/43/Feed-icon.svg/50px-Feed-icon.svg.png" width="50" height="50" /></a></td>
- <td>
- <p><a rel="nofollow" class="external text" href="http://feeds.feedburner.com/MoreCppIdiomsWikibook">More C++ Idioms Recent Changes RSS 2.0</a></p>
- </td>
- </tr>
- </table>
- <div style="float:right; width:250px; clear:right; margin:0 0 1em 1em;">
- <table style="background:#f9f9f9;border:solid #aaaaaa 1px;-moz-border-radius:5px;">
- <tr>
- <td width="50px">
- <p><img alt="Help-books-aj.svg aj ash 01.svg" src="//upload.wikimedia.org/wikipedia/commons/thumb/7/77/Help-books-aj.svg_aj_ash_01.svg/50px-Help-books-aj.svg_aj_ash_01.svg.png" width="50" height="50" style="vertical-align: middle" /></p>
- </td>
- <td width="385px">
- <div align="center" style="background-color:transparent">
- <form name="searchbox" id="searchbox" class="searchbox" action="/wiki/Special:Search">
- <p><input class="searchboxInput" name="search" type="text" value="" placeholder="" size="20" /><input name="prefix" type="hidden" value="More C++ Idioms" /><br />
- <input type="submit" name="fulltext" class="searchboxSearchButton" value="Search this book" /><input type="hidden" value="Search" name="fulltext" /></p>
- </form>
- </div>
- </td>
- </tr>
- </table>
- </div>
- <p><br />
- <br />
- <br /></p>
- <h2><span class="editsection">[<a href="/w/index.php?title=More_C%2B%2B_Idioms/Contents&action=edit&section=T-1" title="More C++ Idioms/Contents">edit</a>]</span> <span class="mw-headline" id="Table_of_Contents">Table of Contents</span></h2>
- <p><i>Note: synonyms for each idiom are listed in parentheses.</i></p>
- <ol>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Adapter_Template&action=edit&redlink=1" class="new" title="More C++ Idioms/Adapter Template (does not exist)">Adapter Template</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Address_Of" title="More C++ Idioms/Address Of">Address Of</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 Oct 2011"><img alt="75% developed  as of 9 Oct 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Algebraic_Hierarchy" title="More C++ Idioms/Algebraic Hierarchy">Algebraic Hierarchy</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 12 June 2008"><img alt="75% developed  as of 12 June 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Attach_by_Initialization" title="More C++ Idioms/Attach by Initialization">Attach by Initialization</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 22 Oct 2011"><img alt="75% developed  as of 22 Oct 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Friendship_and_the_Attorney-Client" title="More C++ Idioms/Friendship and the Attorney-Client">Attorney-Client</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 Oct 2011"><img alt="75% developed  as of 9 Oct 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Barton-Nackman_trick" title="More C++ Idioms/Barton-Nackman trick">Barton-Nackman trick</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 21 Feb 2011"><img alt="75% developed  as of 21 Feb 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Base-from-Member" title="More C++ Idioms/Base-from-Member">Base-from-Member</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Boost_mutant" title="More C++ Idioms/Boost mutant">Boost mutant</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 May 2010"><img alt="75% developed  as of 9 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Calling_Virtuals_During_Initialization" title="More C++ Idioms/Calling Virtuals During Initialization">Calling Virtuals During Initialization</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Capability_Query" title="More C++ Idioms/Capability Query">Capability Query</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 21 Feb 2011"><img alt="100% developed  as of 21 Feb 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Checked_delete" title="More C++ Idioms/Checked delete">Checked delete</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 15 August 2007"><img alt="75% developed  as of 15 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Clear-and-minimize" title="More C++ Idioms/Clear-and-minimize">Clear-and-minimize</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 10 August 2007"><img alt="75% developed  as of 10 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Coercion_by_Member_Template" title="More C++ Idioms/Coercion by Member Template">Coercion by Member Template</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 14 August 2007"><img alt="100% developed  as of 14 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Compile_Time_Control_Structures" title="More C++ Idioms/Compile Time Control Structures">Compile Time Control Structures</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Computational_Constructor" title="More C++ Idioms/Computational Constructor">Computational Constructor</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 Oct 2011"><img alt="75% developed  as of 9 Oct 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Concrete_Data_Type" title="More C++ Idioms/Concrete Data Type">Concrete Data Type</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 17 March 2008"><img alt="75% developed  as of 17 March 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Const_auto_ptr" title="More C++ Idioms/Const auto ptr">Const auto_ptr</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 15 August 2007"><img alt="75% developed  as of 15 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Construct_On_First_Use" title="More C++ Idioms/Construct On First Use">Construct On First Use</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Construction_Tracker" title="More C++ Idioms/Construction Tracker">Construction Tracker</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Copy-and-swap" title="More C++ Idioms/Copy-and-swap">Copy-and-swap</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 10 August 2007"><img alt="75% developed  as of 10 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Copy-on-write" title="More C++ Idioms/Copy-on-write">Copy-on-write</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 20 May 2009"><img alt="100% developed  as of 20 May 2009" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Counted_Body" title="More C++ Idioms/Counted Body">Counted Body (intrusive reference counting)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 16 November 2007"><img alt="75% developed  as of 16 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Curiously_Recurring_Template_Pattern" title="More C++ Idioms/Curiously Recurring Template Pattern">Curiously Recurring Template Pattern</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Detached_Counted_Body&action=edit&redlink=1" class="new" title="More C++ Idioms/Detached Counted Body (does not exist)">Detached Counted Body (non-intrusive reference counting)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="0% developed  as of 2nd March 2011"><img alt="0% developed  as of 2nd March 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/00%25.svg/9px-00%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Empty_Base_Optimization" title="More C++ Idioms/Empty Base Optimization">Empty Base Optimization</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 Oct 2011"><img alt="75% developed  as of 9 Oct 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Emulated_Exception&action=edit&redlink=1" class="new" title="More C++ Idioms/Emulated Exception (does not exist)">Emulated Exception</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/enable-if" title="More C++ Idioms/enable-if">enable-if</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 21 Feb 2011"><img alt="75% developed  as of 21 Feb 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Envelope_Letter" title="More C++ Idioms/Envelope Letter">Envelope Letter</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 1 February 2008"><img alt="75% developed  as of 1 February 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Erase-Remove" title="More C++ Idioms/Erase-Remove">Erase-Remove</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 17 November 2007"><img alt="75% developed  as of 17 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Examplar&action=edit&redlink=1" class="new" title="More C++ Idioms/Examplar (does not exist)">Examplar</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Execute-Around_Pointer" title="More C++ Idioms/Execute-Around Pointer">Execute-Around Pointer</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Export_Guard_Macro&action=edit&redlink=1" class="new" title="More C++ Idioms/Export Guard Macro (does not exist)">Export Guard Macro</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Expression-template" title="More C++ Idioms/Expression-template">Expression-template</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Fake_Vtable" title="More C++ Idioms/Fake Vtable">Fake Vtable</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Fast_Pimpl" title="More C++ Idioms/Fast Pimpl">Fast Pimpl</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="0% developed  as of 6 August 2007"><img alt="0% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/00%25.svg/9px-00%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Final_Class" title="More C++ Idioms/Final Class">Final Class</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 10 May 2010"><img alt="75% developed  as of 10 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Free_Function_Allocators" title="More C++ Idioms/Free Function Allocators">Free Function Allocators</a></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Function_Object&action=edit&redlink=1" class="new" title="More C++ Idioms/Function Object (does not exist)">Function Object</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Generic_Container_Idioms" title="More C++ Idioms/Generic Container Idioms">Generic Container Idioms</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 22 November 2007"><img alt="75% developed  as of 22 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Hierarchy_Generation&action=edit&redlink=1" class="new" title="More C++ Idioms/Hierarchy Generation (does not exist)">Hierarchy Generation</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Include_Guard_Macro" title="More C++ Idioms/Include Guard Macro">Include Guard Macro</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 3 November 2007"><img alt="75% developed  as of 3 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Inline_Guard_Macro" title="More C++ Idioms/Inline Guard Macro">Inline Guard Macro</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 3 November 2007"><img alt="75% developed  as of 3 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Inner_Class" title="More C++ Idioms/Inner Class">Inner Class</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 31 August 2007"><img alt="75% developed  as of 31 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Int-To-Type" title="More C++ Idioms/Int-To-Type">Int-To-Type</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 21 September 2008"><img alt="75% developed  as of 21 September 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Interface_Class" title="More C++ Idioms/Interface Class">Interface Class</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 January 2008"><img alt="75% developed  as of 6 January 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Iterator_Pair" title="More C++ Idioms/Iterator Pair">Iterator Pair</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 28 October 2007"><img alt="100% developed  as of 28 October 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Making_New_Friends" title="More C++ Idioms/Making New Friends">Making New Friends</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 5 January 2008"><img alt="75% developed  as of 5 January 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Metafunction" title="More C++ Idioms/Metafunction">Metafunction</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 15 September 2008"><img alt="75% developed  as of 15 September 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Move_Constructor" title="More C++ Idioms/Move Constructor">Move Constructor</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 13 August 2007"><img alt="100% developed  as of 13 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Multi-statement_Macro" title="More C++ Idioms/Multi-statement Macro">Multi-statement Macro</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 16 February 2008"><img alt="75% developed  as of 16 February 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Member_Detector" title="More C++ Idioms/Member Detector">Member Detector</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 10 May 2010"><img alt="75% developed  as of 10 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Named_Constructor" title="More C++ Idioms/Named Constructor">Named Constructor</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 28 September 2008"><img alt="75% developed  as of 28 September 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Named_External_Argument&action=edit&redlink=1" class="new" title="More C++ Idioms/Named External Argument (does not exist)">Named External Argument</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Named_Loop" title="More C++ Idioms/Named Loop">Named Loop (labeled loop)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 May 2010"><img alt="75% developed  as of 9 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Named_Parameter" title="More C++ Idioms/Named Parameter">Named Parameter</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 11 May 2010"><img alt="75% developed  as of 11 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Named_Template_Parameters&action=edit&redlink=1" class="new" title="More C++ Idioms/Named Template Parameters (does not exist)">Named Template Parameters</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Nifty_Counter" title="More C++ Idioms/Nifty Counter">Nifty Counter (Schwarz Counter)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Non-copyable_Mixin" title="More C++ Idioms/Non-copyable Mixin">Non-copyable Mixin</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Non-member_get&action=edit&redlink=1" class="new" title="More C++ Idioms/Non-member get (does not exist)">Non-member get</a></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Non-member_Non-friend_Function&action=edit&redlink=1" class="new" title="More C++ Idioms/Non-member Non-friend Function (does not exist)">Non-member Non-friend Function</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="0% developed  as of 10 March 2008"><img alt="0% developed  as of 10 March 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/00%25.svg/9px-00%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Non-throwing_swap" title="More C++ Idioms/Non-throwing swap">Non-throwing swap</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 January 2008"><img alt="75% developed  as of 9 January 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Non-Virtual_Interface" title="More C++ Idioms/Non-Virtual Interface">Non-Virtual Interface (Public Overloaded Non-Virtuals Call Protected Non-Overloaded Virtuals)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 12 June 2008"><img alt="75% developed  as of 12 June 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/nullptr" title="More C++ Idioms/nullptr">nullptr</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 3 November 2007"><img alt="75% developed  as of 3 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Object_Generator" title="More C++ Idioms/Object Generator">Object Generator</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 14 September 2008"><img alt="75% developed  as of 14 September 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Object_Template" title="More C++ Idioms/Object Template">Object Template</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Overload_Set_Creation" title="More C++ Idioms/Overload Set Creation">Overload Set Creation</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Parameterized_Base_Class" title="More C++ Idioms/Parameterized Base Class">Parameterized Base Class (Parameterized Inheritance)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Handle_Body&action=edit&redlink=1" class="new" title="More C++ Idioms/Handle Body (does not exist)">Pimpl (Handle Body, Compilation Firewall, Cheshire Cat)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="0% developed  as of 2nd March 2011"><img alt="0% developed  as of 2nd March 2011" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/00%25.svg/9px-00%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Policy_Clone" title="More C++ Idioms/Policy Clone">Policy Clone (Metafunction wrapper)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 14 August 2007"><img alt="100% developed  as of 14 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Policy-based_Design&action=edit&redlink=1" class="new" title="More C++ Idioms/Policy-based Design (does not exist)">Policy-based Design</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Polymorphic_Exception" title="More C++ Idioms/Polymorphic Exception">Polymorphic Exception</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 28 September 2008"><img alt="75% developed  as of 28 September 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Recursive_Type_Composition" title="More C++ Idioms/Recursive Type Composition">Recursive Type Composition</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Requiring_or_Prohibiting_Heap-based_Objects" title="More C++ Idioms/Requiring or Prohibiting Heap-based Objects">Requiring or Prohibiting Heap-based Objects</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Resource_Acquisition_Is_Initialization" title="More C++ Idioms/Resource Acquisition Is Initialization">Resource Acquisition Is Initialization (RAII, Execute-Around Object, Scoped Locking)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 6 November 2007"><img alt="100% developed  as of 6 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Resource_Return" title="More C++ Idioms/Resource Return">Resource Return</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 3 November 2007"><img alt="75% developed  as of 3 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Return_Type_Resolver" title="More C++ Idioms/Return Type Resolver">Return Type Resolver</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 10 May 2010"><img alt="75% developed  as of 10 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Runtime_Static_Initialization_Order_Idioms" title="More C++ Idioms/Runtime Static Initialization Order Idioms">Runtime Static Initialization Order Idioms</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Safe_bool" title="More C++ Idioms/Safe bool">Safe bool</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Scope_Guard" title="More C++ Idioms/Scope Guard">Scope Guard</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="100% developed  as of 14 August 2007"><img alt="100% developed  as of 14 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/c/ce/100%25.svg/9px-100%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/SFINAE" title="More C++ Idioms/SFINAE">Substitution Failure Is Not An Error (SFINAE)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="0% developed  as of 6 August 2007"><img alt="0% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/00%25.svg/9px-00%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Shortening_Long_Template_Names&action=edit&redlink=1" class="new" title="More C++ Idioms/Shortening Long Template Names (does not exist)">Shortening Long Template Names</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Shrink-to-fit" title="More C++ Idioms/Shrink-to-fit">Shrink-to-fit</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 10 August 2007"><img alt="75% developed  as of 10 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Small_Object_Optimization" title="More C++ Idioms/Small Object Optimization">Small Object Optimization</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Smart_Pointer" title="More C++ Idioms/Smart Pointer">Smart Pointer</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 17 November 2007"><img alt="75% developed  as of 17 November 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Storage_Class_Tracker" title="More C++ Idioms/Storage Class Tracker">Storage Class Tracker</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Tag_Dispatching" title="More C++ Idioms/Tag Dispatching">Tag Dispatching</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="0% developed  as of 21 October 2007"><img alt="0% developed  as of 21 October 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/00%25.svg/9px-00%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Temporary_Base_Class" title="More C++ Idioms/Temporary Base Class">Temporary Base Class</a></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Temporary_Proxy&action=edit&redlink=1" class="new" title="More C++ Idioms/Temporary Proxy (does not exist)">Temporary Proxy</a></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/The_result_of_technique&action=edit&redlink=1" class="new" title="More C++ Idioms/The result of technique (does not exist)">The result_of technique</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Thin_Template" title="More C++ Idioms/Thin Template">Thin Template</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 6 August 2007"><img alt="75% developed  as of 6 August 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Traits" title="More C++ Idioms/Traits">Traits</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="0% developed  as of 21 October 2007"><img alt="0% developed  as of 21 October 2007" src="//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/00%25.svg/9px-00%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/w/index.php?title=More_C%2B%2B_Idioms/Type_Erasure&action=edit&redlink=1" class="new" title="More C++ Idioms/Type Erasure (does not exist)">Type Erasure</a></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Type_Generator" title="More C++ Idioms/Type Generator">Type Generator (Templated Typedef)</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 14 September 2008"><img alt="75% developed  as of 14 September 2008" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Type_Safe_Enum" title="More C++ Idioms/Type Safe Enum">Type Safe Enum</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 11 May 2010"><img alt="75% developed  as of 11 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Type_Selection" title="More C++ Idioms/Type Selection">Type Selection</a> <span class="noprint"><a href="/wiki/Help:Development_stages" title="75% developed  as of 9 May 2010"><img alt="75% developed  as of 9 May 2010" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/49/75%25.svg/9px-75%25.svg.png" width="9" height="9" /></a></span></li>
- <li><a href="/wiki/More_C%2B%2B_Idioms/Virtual_Constructor" title="More C++ Idioms/Virtual Constructor">Virtual Constructor</a> <