Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(315)

Side by Side Diff: styleguide/c++/c++11.html

Issue 1434123003: Update Google C++ Style guide URL in c++11.html (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <!-- 2 <!--
3 Copyright 2014 The Chromium Authors. All rights reserved. 3 Copyright 2014 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be 4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file. 5 found in the LICENSE file.
6 --> 6 -->
7 <html> 7 <html>
8 <head> 8 <head>
9 <meta charset="utf-8"> 9 <meta charset="utf-8">
10 <title>C++11 use in Chromium</title> 10 <title>C++11 use in Chromium</title>
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 <td>Recommended to increase readability. Approved without discussion.</td> 73 <td>Recommended to increase readability. Approved without discussion.</td>
74 </tr> 74 </tr>
75 75
76 <tr> 76 <tr>
77 <td>Automatic Types</td> 77 <td>Automatic Types</td>
78 <td><code>auto</code></td> 78 <td><code>auto</code></td>
79 <td>Automatic type deduction</td> 79 <td>Automatic type deduction</td>
80 <td><a href="http://en.cppreference.com/w/cpp/language/auto"> 80 <td><a href="http://en.cppreference.com/w/cpp/language/auto">
81 auto specifier</a></td> 81 auto specifier</a></td>
82 <td>Use according to the <a 82 <td>Use according to the <a
83 href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#auto">Goo gle 83 href="https://google.github.io/styleguide/cppguide.html#auto">Google
84 Style Guide on <code>auto</code></a>. <a href="https://groups.google.com/a/chrom ium.org/forum/#!topic/chromium-dev/OQyYSfH9m2M">Discussion thread</a>. <a href=" https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/5-Bt3BJzAo0" >Another discussion thread</a>.</td> 84 Style Guide on <code>auto</code></a>. <a href="https://groups.google.com/a/chrom ium.org/forum/#!topic/chromium-dev/OQyYSfH9m2M">Discussion thread</a>. <a href=" https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/5-Bt3BJzAo0" >Another discussion thread</a>.</td>
85 </tr> 85 </tr>
86 86
87 <tr> 87 <tr>
88 <td>Declared Type Accessor</td> 88 <td>Declared Type Accessor</td>
89 <td><code>decltype(<i>expression</i>)</code></td> 89 <td><code>decltype(<i>expression</i>)</code></td>
90 <td>Provides a means to determine the type of an expression at compile-time, 90 <td>Provides a means to determine the type of an expression at compile-time,
91 useful most often in templates.</td> 91 useful most often in templates.</td>
92 <td><a href="http://en.cppreference.com/w/cpp/language/decltype"> 92 <td><a href="http://en.cppreference.com/w/cpp/language/decltype">
93 decltype specifier</a></td> 93 decltype specifier</a></td>
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 148
149 <tr> 149 <tr>
150 <td>Lambda Expressions</td> 150 <td>Lambda Expressions</td>
151 <td><code>[<i>captures</i>](<i>params</i>) -&gt; <i>ret</i> { <i>body</i> }</cod e></td> 151 <td><code>[<i>captures</i>](<i>params</i>) -&gt; <i>ret</i> { <i>body</i> }</cod e></td>
152 <td>Anonymous functions</td> 152 <td>Anonymous functions</td>
153 <td><a href="http://en.cppreference.com/w/cpp/language/lambda">Lambda functions< /a></td> 153 <td><a href="http://en.cppreference.com/w/cpp/language/lambda">Lambda functions< /a></td>
154 <td>Do not bind or store lambdas; use <code>base::Bind</code> and 154 <td>Do not bind or store lambdas; use <code>base::Bind</code> and
155 <code>base::Callback</code> instead, because they offer protection against a 155 <code>base::Callback</code> instead, because they offer protection against a
156 large class of object lifetime mistakes. Don't use default captures 156 large class of object lifetime mistakes. Don't use default captures
157 (<code>[=]</code>, <code>[&amp;]</code> &ndash; <a 157 (<code>[=]</code>, <code>[&amp;]</code> &ndash; <a
158 href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Lambda_ expressions">Google Style Guide</a>). 158 href="https://google.github.io/styleguide/cppguide.html#Lambda_expressions">Go ogle Style Guide</a>).
159 Lambdas are typically useful as a parameter to methods or 159 Lambdas are typically useful as a parameter to methods or
160 functions that will use them immediately, such as those in 160 functions that will use them immediately, such as those in
161 <code>&lt;algorithm&gt;</code>. <a 161 <code>&lt;algorithm&gt;</code>. <a
162 href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/D9Un nxBnciQ">Discussion 162 href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/D9Un nxBnciQ">Discussion
163 thread</a></td> 163 thread</a></td>
164 </tr> 164 </tr>
165 165
166 <tr> 166 <tr>
167 <td>Local Types as Template Arguments</td> 167 <td>Local Types as Template Arguments</td>
168 <td></td> 168 <td></td>
169 <td>Allows local and unnamed types as template arguments</td> 169 <td>Allows local and unnamed types as template arguments</td>
170 <td><a href="http://stackoverflow.com/questions/742607/using-local-classes-with- stl-algorithms"> 170 <td><a href="http://stackoverflow.com/questions/742607/using-local-classes-with- stl-algorithms">
171 Local types, types without linkage and unnamed types as template arguments</a></ td> 171 Local types, types without linkage and unnamed types as template arguments</a></ td>
172 <td>Usage should be rare. Approved without discussion.</td> 172 <td>Usage should be rare. Approved without discussion.</td>
173 </tr> 173 </tr>
174 174
175 <tr> 175 <tr>
176 <td>Non-Static Class Member Initializers</td> 176 <td>Non-Static Class Member Initializers</td>
177 <td> 177 <td>
178 <code> 178 <code>
179 class C {<br /> 179 class C {<br />
180 <i>type</i> <i>var</i> = <i>value</i>;<br/> 180 <i>type</i> <i>var</i> = <i>value</i>;<br/>
181 C() // copy-initializes <i>var</i><br/> 181 C() // copy-initializes <i>var</i><br/>
182 </code> 182 </code>
183 <td>Allows non-static class members to be initialized at their definitions (outs ide constructors)</td> 183 <td>Allows non-static class members to be initialized at their definitions (outs ide constructors)</td>
184 <td><a href="http://en.cppreference.com/w/cpp/language/data_members"> 184 <td><a href="http://en.cppreference.com/w/cpp/language/data_members">
185 Non-static data members</a></td> 185 Non-static data members</a></td>
186 <td><a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#In itialization">Google 186 <td>
187 Style Guide</a>.
188 <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/zqB -DySA4V0">Discussion thread</a> 187 <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/zqB -DySA4V0">Discussion thread</a>
189 </td> 188 </td>
190 </tr> 189 </tr>
191 190
192 <tr> 191 <tr>
193 <td>Null Pointer Constant</td> 192 <td>Null Pointer Constant</td>
194 <td><code>nullptr</code></td> 193 <td><code>nullptr</code></td>
195 <td>Declares a type-safe null pointer</td> 194 <td>Declares a type-safe null pointer</td>
196 <td><a href="http://en.cppreference.com/w/cpp/language/nullptr"> 195 <td><a href="http://en.cppreference.com/w/cpp/language/nullptr">
197 nullptr</a></td> 196 nullptr</a></td>
198 <td>Recommended for new code. 197 <td>Recommended for new code.
199 <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/4mi jeJHzxLg">Discussion thread</a>. 198 <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/4mi jeJHzxLg">Discussion thread</a>.
200 <a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#0_and_ nullptr/NULL">Google Style Guide</a>. 199 <a href="https://google.github.io/styleguide/cppguide.html#0_and_nullptr/NULL">G oogle Style Guide</a>.
201 <code>std::nullptr_t</code> can be used too. 200 <code>std::nullptr_t</code> can be used too.
202 </td> 201 </td>
203 </tr> 202 </tr>
204 203
205 <tr> 204 <tr>
206 <td>Override Specifier</td> 205 <td>Override Specifier</td>
207 <td><code>override</code></td> 206 <td><code>override</code></td>
208 <td>Indicates that a class or function overrides a base implementation</td> 207 <td>Indicates that a class or function overrides a base implementation</td>
209 <td><a href="http://en.cppreference.com/w/cpp/language/override">override Langua ge Reference</a></td> 208 <td><a href="http://en.cppreference.com/w/cpp/language/override">override Langua ge Reference</a></td>
210 <td>Recommended for new code. Existing uses of the <code>OVERRIDE</code> macro w ill be <a href="https://crbug.com/417463">replaced throughout the codebase</a>. <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/VTN ZzizN0zo">Discussion</a></td> 209 <td>Recommended for new code. Existing uses of the <code>OVERRIDE</code> macro w ill be <a href="https://crbug.com/417463">replaced throughout the codebase</a>. <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/VTN ZzizN0zo">Discussion</a></td>
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 <th style='width:240px;'>Notes</th> 304 <th style='width:240px;'>Notes</th>
306 </tr> 305 </tr>
307 306
308 <tr> 307 <tr>
309 <td>Constant Expressions</td> 308 <td>Constant Expressions</td>
310 <td><code>constexpr</code></td> 309 <td><code>constexpr</code></td>
311 <td>Compile-time constant expressions</td> 310 <td>Compile-time constant expressions</td>
312 <td><a href="http://en.cppreference.com/w/cpp/language/constexpr"> 311 <td><a href="http://en.cppreference.com/w/cpp/language/constexpr">
313 constexpr specifier</a></td> 312 constexpr specifier</a></td>
314 <td>Doesn't work in MSVS2013. Reevalute once it does. <a 313 <td>Doesn't work in MSVS2013. Reevalute once it does. <a
315 href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Use_of_co nstexpr">Google 314 href="https://google.github.io/styleguide/cppguide.html#Use_of_constexpr">Google
316 Style Guide on <code>constexpr</code></a></td> 315 Style Guide on <code>constexpr</code></a></td>
317 </tr> 316 </tr>
318 317
319 <tr> 318 <tr>
320 <td>Explicit Conversion Operators</td> 319 <td>Explicit Conversion Operators</td>
321 <td><code>explicit operator <i>type</i>() { 320 <td><code>explicit operator <i>type</i>() {
322 <br />&nbsp;&nbsp;// code<br /> }</code></td> 321 <br />&nbsp;&nbsp;// code<br /> }</code></td>
323 <td>Allows conversion operators that cannot be implicitly invoked</td> 322 <td>Allows conversion operators that cannot be implicitly invoked</td>
324 <td><a href="http://en.cppreference.com/w/cpp/language/explicit"> 323 <td><a href="http://en.cppreference.com/w/cpp/language/explicit">
325 explicit specifier</a></td> 324 explicit specifier</a></td>
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
387 <tr> 386 <tr>
388 <td>UTF-16 and UTF-32 Support (16-Bit and 32-Bit Character Types)</td> 387 <td>UTF-16 and UTF-32 Support (16-Bit and 32-Bit Character Types)</td>
389 <td><code>char16_t</code> and <code>char32_t</code></td> 388 <td><code>char16_t</code> and <code>char32_t</code></td>
390 <td>Provides character types for handling 16-bit 389 <td>Provides character types for handling 16-bit
391 and 32-bit code units (useful for encoding 390 and 32-bit code units (useful for encoding
392 UTF-16 and UTF-32 string data)</td> 391 UTF-16 and UTF-32 string data)</td>
393 <td><a href="http://en.cppreference.com/w/cpp/language/types"> 392 <td><a href="http://en.cppreference.com/w/cpp/language/types">
394 Fundamental types</a></td> 393 Fundamental types</a></td>
395 <td>Doesn't work in MSVS2013. Reevaluate once it does. Non-UTF-8 text is 394 <td>Doesn't work in MSVS2013. Reevaluate once it does. Non-UTF-8 text is
396 banned by the 395 banned by the
397 <a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Non-AS CII_Characters"> 396 <a href="https://google.github.io/styleguide/cppguide.html#Non-ASCII_Characters" >
398 C++ Style Guide</a>. However, may be useful for 397 C++ Style Guide</a>. However, may be useful for
399 consuming non-ASCII data. <a href="https://groups.google.com/a/chromium.org/foru m/#!topic/chromium-dev/ME2kL7_Kvyk">Discussion thread</a></td> 398 consuming non-ASCII data. <a href="https://groups.google.com/a/chromium.org/foru m/#!topic/chromium-dev/ME2kL7_Kvyk">Discussion thread</a></td>
400 </tr> 399 </tr>
401 400
402 <tr> 401 <tr>
403 <td>UTF-8, UTF-16, UTF-32 String Literals</td> 402 <td>UTF-8, UTF-16, UTF-32 String Literals</td>
404 <td><code>u8&quot;<i>string</i>&quot;, u&quot;<i>string</i>&quot;, U&quot;<i>str ing</i>&quot;</code></td> 403 <td><code>u8&quot;<i>string</i>&quot;, u&quot;<i>string</i>&quot;, U&quot;<i>str ing</i>&quot;</code></td>
405 <td>Enforces UTF-8, UTF-16, UTF-32 encoding on all string literals</td> 404 <td>Enforces UTF-8, UTF-16, UTF-32 encoding on all string literals</td>
406 <td><a href="http://en.cppreference.com/w/cpp/language/string_literal"> 405 <td><a href="http://en.cppreference.com/w/cpp/language/string_literal">
407 string literal</a></td> 406 string literal</a></td>
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
505 504
506 <tr> 505 <tr>
507 <td>Exception Features</td> 506 <td>Exception Features</td>
508 <td><code>noexcept</code>, <code>exception_ptr</code>, 507 <td><code>noexcept</code>, <code>exception_ptr</code>,
509 <code>current_exception()</code>, <code>rethrow_exception</code>, 508 <code>current_exception()</code>, <code>rethrow_exception</code>,
510 and <code>nested_exception</code></td> 509 and <code>nested_exception</code></td>
511 <td>Enhancements to exception throwing and handling</td> 510 <td>Enhancements to exception throwing and handling</td>
512 <td><a href="http://en.cppreference.com/w/cpp/error/exception"> 511 <td><a href="http://en.cppreference.com/w/cpp/error/exception">
513 std::exception</a></td> 512 std::exception</a></td>
514 <td>Exceptions are banned by the 513 <td>Exceptions are banned by the
515 <a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Except ions"> C++ Style Guide</a>. <a href="https://groups.google.com/a/chromium.org/fo rum/#!topic/chromium-dev/8i4tMqNpHhg">Discussion thread</a></td> 514 <a href="https://google.github.io/styleguide/cppguide.html#Exceptions"> C++ Styl e Guide</a>. <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chr omium-dev/8i4tMqNpHhg">Discussion thread</a></td>
516 </tr> 515 </tr>
517 516
518 <tr> 517 <tr>
519 <td>Inline Namespaces</td> 518 <td>Inline Namespaces</td>
520 <td><code>inline</code></td> 519 <td><code>inline</code></td>
521 <td>Allows better versioning of namespaces</td> 520 <td>Allows better versioning of namespaces</td>
522 <td><a href="http://en.cppreference.com/w/cpp/language/namespace">Namespaces</a> </td> 521 <td><a href="http://en.cppreference.com/w/cpp/language/namespace">Namespaces</a> </td>
523 <td>Unclear how it will work with components</td> 522 <td>Unclear how it will work with components</td>
524 </tr> 523 </tr>
525 524
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
567 <th style='width:240px;'>Documentation Link</th> 566 <th style='width:240px;'>Documentation Link</th>
568 <th style='width:240px;'>Style Guide Usage</th> 567 <th style='width:240px;'>Style Guide Usage</th>
569 </tr> 568 </tr>
570 569
571 <tr> 570 <tr>
572 <td>Address Retrieval</td> 571 <td>Address Retrieval</td>
573 <td><code>std::addressof()</code></td> 572 <td><code>std::addressof()</code></td>
574 <td>Obtains the address of an object even with overloaded <code>operator&amp;</c ode></td> 573 <td>Obtains the address of an object even with overloaded <code>operator&amp;</c ode></td>
575 <td><a href="http://en.cppreference.com/w/cpp/memory/addressof">std::addressof</ a></td> 574 <td><a href="http://en.cppreference.com/w/cpp/memory/addressof">std::addressof</ a></td>
576 <td>Usage should be rare as 575 <td>Usage should be rare as
577 <a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Operat or_Overloading"> 576 <a href="https://google.github.io/styleguide/cppguide.html#Operator_Overloading" >
578 Operator Overloading</a> is rare and <code>&amps;</code> 577 Operator Overloading</a> is rare and <code>&amps;</code>
579 should suffice in most cases. May be preferable 578 should suffice in most cases. May be preferable
580 over <code>&amps;</code> for performing object 579 over <code>&amps;</code> for performing object
581 identity checks.</td> 580 identity checks.</td>
582 </tr> 581 </tr>
583 582
584 <tr> 583 <tr>
585 <td>Aligned Storage</td> 584 <td>Aligned Storage</td>
586 <td><code>std::aligned_storage&lt;Size, Align&gt;::type</code> 585 <td><code>std::aligned_storage&lt;Size, Align&gt;::type</code>
587 <code>std::alignment_of&lt;T&gt;</code>, 586 <code>std::alignment_of&lt;T&gt;</code>,
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after
849 <td><a href="http://www.informit.com/guides/content.aspx?g=cplusplus&amp;seqNum= 217"> 848 <td><a href="http://www.informit.com/guides/content.aspx?g=cplusplus&amp;seqNum= 217">
850 Reference Wrappers</a></td> 849 Reference Wrappers</a></td>
851 <td></td> 850 <td></td>
852 </tr> 851 </tr>
853 852
854 <tr> 853 <tr>
855 <td>Shared Pointers</td> 854 <td>Shared Pointers</td>
856 <td><code>std::shared_ptr</code></td> 855 <td><code>std::shared_ptr</code></td>
857 <td>Allows shared ownership of a pointer through reference counts</td> 856 <td>Allows shared ownership of a pointer through reference counts</td>
858 <td><a href="http://en.cppreference.com/w/cpp/memory/shared_ptr">std::shared_ptr </a></td> 857 <td><a href="http://en.cppreference.com/w/cpp/memory/shared_ptr">std::shared_ptr </a></td>
859 <td><a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Ow nership_and_Smart_Pointers"> 858 <td><a href="https://google.github.io/styleguide/cppguide.html#Ownership_and_Sma rt_Pointers">
860 Ownership and Smart Pointers</a></td> 859 Ownership and Smart Pointers</a></td>
861 </tr> 860 </tr>
862 861
863 <tr> 862 <tr>
864 <td>Soft Program Exits</td> 863 <td>Soft Program Exits</td>
865 <td><code>std::at_quick_exit()</code> 864 <td><code>std::at_quick_exit()</code>
866 and <code>std::quick_exit()</code></td> 865 and <code>std::quick_exit()</code></td>
867 <td>Allows registration of functions to be called upon exit, 866 <td>Allows registration of functions to be called upon exit,
868 allowing cleaner program exit than <code>abort()</code> or 867 allowing cleaner program exit than <code>abort()</code> or
869 <code>exit</code></td> 868 <code>exit</code></td>
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
964 <td><a href="http://en.cppreference.com/w/cpp/header/type_traits"> 963 <td><a href="http://en.cppreference.com/w/cpp/header/type_traits">
965 Standard library header &lt;type_traits&gt;</a></td> 964 Standard library header &lt;type_traits&gt;</a></td>
966 <td></td> 965 <td></td>
967 </tr> 966 </tr>
968 967
969 <tr> 968 <tr>
970 <td>Unique Pointers</td> 969 <td>Unique Pointers</td>
971 <td><code>std::unique_ptr&lt;<i>type</i>&gt;</code></td> 970 <td><code>std::unique_ptr&lt;<i>type</i>&gt;</code></td>
972 <td>Defines a pointer with clear and unambiguous ownership</td> 971 <td>Defines a pointer with clear and unambiguous ownership</td>
973 <td>TODO: documentation link</td> 972 <td>TODO: documentation link</td>
974 <td><a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Ow nership_and_Smart_Pointers"> 973 <td><a href="https://google.github.io/styleguide/cppguide.html#Ownership_and_Sma rt_Pointers">
975 Ownership and Smart Pointers</a></td> 974 Ownership and Smart Pointers</a></td>
976 </tr> 975 </tr>
977 976
978 <tr> 977 <tr>
979 <td>Unordered Associative Containers</td> 978 <td>Unordered Associative Containers</td>
980 <td><code>std::unordered_set</code>, <code>std::unordered_map</code>, 979 <td><code>std::unordered_set</code>, <code>std::unordered_map</code>,
981 <code>std::unordered_multiset</code>, and <code>std::unordered_multimap</code></ td> 980 <code>std::unordered_multiset</code>, and <code>std::unordered_multimap</code></ td>
982 <td>Allows efficient containers of key/value pairs</td> 981 <td>Allows efficient containers of key/value pairs</td>
983 <td><a href="http://en.cppreference.com/w/cpp/container/unordered_map">std::unor dered_map</a> 982 <td><a href="http://en.cppreference.com/w/cpp/container/unordered_map">std::unor dered_map</a>
984 and <a href="http://en.cppreference.com/w/cpp/container/unordered_set">std::unor dered_set</a> 983 and <a href="http://en.cppreference.com/w/cpp/container/unordered_set">std::unor dered_set</a>
985 </td> 984 </td>
986 <td></td> 985 <td></td>
987 </tr> 986 </tr>
988 987
989 <tr> 988 <tr>
990 <td>Variadic Copy Macro</td> 989 <td>Variadic Copy Macro</td>
991 <td><code>va_copy(va_list <i>dest</i>, va_list <i>src</i>)</code></td> 990 <td><code>va_copy(va_list <i>dest</i>, va_list <i>src</i>)</code></td>
992 <td>Makes a copy of the variadic function arguments</td> 991 <td>Makes a copy of the variadic function arguments</td>
993 <td></td> 992 <td></td>
994 <td></td> 993 <td></td>
995 </tr> 994 </tr>
996 995
997 <tr> 996 <tr>
998 <td>Weak Pointers</td> 997 <td>Weak Pointers</td>
999 <td><code>std::weak_ptr</code></td> 998 <td><code>std::weak_ptr</code></td>
1000 <td>Allows a weak reference to a <code>std::shared_ptr</code></td> 999 <td>Allows a weak reference to a <code>std::shared_ptr</code></td>
1001 <td><a href="http://en.cppreference.com/w/cpp/memory/weak_ptr"> 1000 <td><a href="http://en.cppreference.com/w/cpp/memory/weak_ptr">
1002 std::weak_ptr</a></td> 1001 std::weak_ptr</a></td>
1003 <td><a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Ow nership_and_Smart_Pointers"> 1002 <td><a href="https://google.github.io/styleguide/cppguide.html#Ownership_and_Sma rt_Pointers">
1004 Ownership and Smart Pointers</a></td> 1003 Ownership and Smart Pointers</a></td>
1005 </tr> 1004 </tr>
1006 1005
1007 <tr> 1006 <tr>
1008 <td>Wide String Support</td> 1007 <td>Wide String Support</td>
1009 <td><code>std::wstring_convert</code>, 1008 <td><code>std::wstring_convert</code>,
1010 <code>std::wbuffer_convert</code>. 1009 <code>std::wbuffer_convert</code>.
1011 <code>std::codecvt_utf8</code>, <code>std::codecvt_utf16</code>, 1010 <code>std::codecvt_utf8</code>, <code>std::codecvt_utf16</code>,
1012 and <code>std::codecvt_utf8_utf16</code></td> 1011 and <code>std::codecvt_utf8_utf16</code></td>
1013 <td>Converts between string encodings</td> 1012 <td>Converts between string encodings</td>
1014 <td><a href="http://en.cppreference.com/w/cpp/locale/wstring_convert"> 1013 <td><a href="http://en.cppreference.com/w/cpp/locale/wstring_convert">
1015 std::wstring_convert</a>, 1014 std::wstring_convert</a>,
1016 <a href="http://en.cppreference.com/w/cpp/locale/wbuffer_convert"> 1015 <a href="http://en.cppreference.com/w/cpp/locale/wbuffer_convert">
1017 std::wbuffer_convert</a>, 1016 std::wbuffer_convert</a>,
1018 <a href="http://en.cppreference.com/w/cpp/locale/codecvt_utf8"> 1017 <a href="http://en.cppreference.com/w/cpp/locale/codecvt_utf8">
1019 std::codecvt_utf8</a>, 1018 std::codecvt_utf8</a>,
1020 <a href="http://en.cppreference.com/w/cpp/locale/codecvt_utf16"> 1019 <a href="http://en.cppreference.com/w/cpp/locale/codecvt_utf16">
1021 std::codecvt_utf16</a>, and 1020 std::codecvt_utf16</a>, and
1022 <a href="http://en.cppreference.com/w/cpp/locale/codecvt_utf8_utf16"> 1021 <a href="http://en.cppreference.com/w/cpp/locale/codecvt_utf8_utf16">
1023 std::codecvt_utf8_utf16</a> 1022 std::codecvt_utf8_utf16</a>
1024 </td> 1023 </td>
1025 <td>Non-UTF-8 text is banned by the 1024 <td>Non-UTF-8 text is banned by the
1026 <a href="https://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Non-AS CII_Characters"> 1025 <a href="https://google.github.io/styleguide/cppguide.html#Non-ASCII_Characters" >
1027 C++ Style Guide</a>. However, may be useful for 1026 C++ Style Guide</a>. However, may be useful for
1028 consuming non-ASCII data.</td> 1027 consuming non-ASCII data.</td>
1029 </tr> 1028 </tr>
1030 1029
1031 </tbody> 1030 </tbody>
1032 </table> 1031 </table>
1033 1032
1034 </div> 1033 </div>
1035 </body> 1034 </body>
1036 </html> 1035 </html>
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698