Knowledge

C++17

Source 📝

5401: 3072: 32: 138: 73: 330:. The C++17 specification reached the Draft International Standard (DIS) stage in March 2017. This DIS was unanimously approved, with only editorial comments, and the final standard was published in December 2017. Few changes were made to the C++ 1041:
15.8 (MSVC 19.15) Standard Library and later supports all C++17 library features except for "Elementary String Conversions" and referring to C99 instead of C11. "Elementary String Conversions" is added in
4727: 2540: 2453: 1169: 318:
Before the C++ Standards Committee fixed a 3-year release cycle, C++17's release date was uncertain. In that time period, the C++17 revision was also called
2895: 2579: 1991: 1690: 4239: 274: 4234: 1446: 2428: 1833: 1808: 1640: 1503: 4456: 4244: 2271: 2072: 1305: 1250: 3739: 3117: 2315: 2294: 2218: 2156: 1780: 1749: 1612: 1581: 1474: 1392: 1111: 291: 2246: 1665: 2187: 1721: 1225: 1090: 2887: 1197: 1339: 3961: 1143: 2482: 5430: 3076: 1905: 1280: 505:; C++17 adds the corresponding character literals for consistency, though as they are restricted to a single byte they can only store " 4931: 5036: 4956: 4747: 4742: 4588: 295: 4754: 2572: 5435: 3108: 2449: 2340: 5287: 3477: 2799: 267: 3649: 1032:
libstdc++ since version 9.1 has complete support for C++17 (8.1 without Parallelism TS and referring to C99 instead of C11)
5356: 5157: 4680: 4063: 3654: 3624: 2814: 2784: 2369: 2097: 1858: 5001: 4331: 4128: 3041: 2565: 2125: 2047: 1961: 1553: 1528: 1420: 1364: 784: 3452: 2511: 2019: 1933: 4528: 3552: 2804: 2532: 260: 188: 119: 59: 5092: 4264: 4108: 3036: 2398: 618:(ignoring top-level cv-qualifiers) shall result in no copy or move constructors from the prvalue expression. See 1987: 5187: 5182: 4941: 4889: 1686: 842: 4981: 4311: 3824: 3472: 3031: 3026: 1883: 5326: 4804: 3101: 2695: 506: 4986: 4894: 4844: 4603: 3936: 3931: 3330: 2420: 1829: 1804: 1661: 1636: 1499: 1043: 1038: 1019: 5252: 5197: 4976: 4961: 4219: 3639: 3135: 2987: 2758: 2267: 2068: 1301: 1246: 1221: 1086: 1066: 1061: 880: 331: 88: 20: 2311: 2291: 2211: 2149: 1773: 1742: 1605: 1574: 1467: 1385: 1190: 1118: 5300: 5207: 4996: 4971: 4183: 4178: 2832: 2824: 2809: 2725: 2710: 2675: 2649: 2312:"N4190: Removing auto_ptr, random_shuffle(), And Old <functional> Stuff (Stephan T. Lavavej)" 2242: 1056: 101: 45: 2180: 4854: 4396: 4386: 4381: 3956: 3941: 3881: 3315: 3310: 3270: 2867: 2857: 1007: 732:
Inline variables, which allows the definition of variables in header files without violating the
510: 5445: 5440: 5404: 5172: 5162: 4291: 3709: 3290: 3094: 2740: 2700: 1335: 961: 94: 2474: 1139: 796:, a data type that may not always be returned by a given algorithm with support for non-return 4593: 4103: 3325: 3295: 3188: 3178: 3139: 3131: 2763: 2301:, IBM paper N4210, 2014-10-10. Authors: Michael Wong, Hubert Tong, Rajan Bhakta, Derek Inglis 914: 521: 1897: 5351: 5257: 4991: 4966: 4809: 4650: 4401: 4088: 3891: 3764: 3547: 3051: 2862: 2748: 2705: 2690: 1276: 972:, and old function adaptors. These were superseded in C++11 by improved facilities such as 8: 5192: 2794: 733: 603: 5137: 5072: 3412: 2925: 1035:
libc++ as of version 9 has partial support for C++17, with the remainder "in progress"
876: 815: 1525:"N4268: Allow constant evaluation for all non-type template arguments (Richard Smith)" 3966: 3059: 2789: 2715: 2336: 891: 887: 836: 540: 502: 339: 83: 4700: 4441: 3769: 3086: 2730: 2720: 2684: 2670: 2604: 954: 302:
programming language. C++17 replaced the prior version of the C++ standard, called
159: 5310: 5031: 4936: 4690: 4618: 4613: 4608: 4093: 4056: 4051: 4046: 4041: 4036: 4031: 4026: 2967: 2298: 895: 737: 467: 347: 2680: 747:, allowing the availability of a header to be checked by preprocessor directives 5425: 4598: 4346: 4158: 4021: 4011: 4006: 4001: 3996: 3991: 3986: 3981: 3976: 3345: 3335: 3008: 2877: 2361: 2093: 1854: 396: 2118: 1805:"P0012R1: Make exception specifications be part of the type system, version 5" 1711: 5419: 5386: 5361: 5346: 5282: 5277: 5272: 5267: 5262: 5107: 5052: 5021: 5011: 4874: 4864: 4834: 4829: 4779: 4759: 4737: 4722: 4675: 4640: 4583: 4578: 4568: 4446: 4391: 4366: 4361: 4341: 4214: 3754: 3193: 3163: 2936: 2842: 2837: 2753: 2665: 2609: 2362:"C++ Standards Support in GCC - GNU Project - Free Software Foundation (FSF)" 2043: 1957: 994: 204: 2012: 1549: 1524: 1416: 1360: 5247: 5217: 5077: 4421: 4416: 4279: 4274: 4269: 4188: 4133: 4083: 4016: 3971: 3946: 3876: 3871: 3866: 3861: 3856: 3814: 3779: 3689: 3684: 3512: 3320: 2910: 2872: 2847: 2503: 1926: 1830:"P0018R3: Lambda Capture of *this by Value as [=,*this], version 3" 1247:"N3922: New Rules for auto deduction from braced-init-list (James Dennett)" 904: 619: 362:
C++17 introduced many new features. The following lists may be incomplete.
163: 51: 1165: 5222: 4919: 4914: 4909: 4493: 4410: 3382: 2982: 2390: 1712:"CppCon 2018: Timur Doumler "Class template argument deduction in C++17"" 1135: 950:
This revision of C++ not only added new features but also removed a few.
867: 793: 1958:"N4279: Improved insertion interface for unique-key maps (Thomas Köppe)" 1222:"N4051: Allow typename in a template template parameter (Richard Smith)" 5212: 5117: 4824: 4799: 4563: 4518: 4254: 3911: 3724: 3617: 3612: 3607: 3567: 3542: 3417: 3173: 2951: 2779: 5381: 5376: 5371: 5366: 5341: 5331: 5292: 5242: 5237: 5232: 5227: 5132: 5127: 5122: 5112: 5102: 5087: 5067: 5062: 5057: 5006: 4951: 4946: 4926: 4904: 4884: 4839: 4819: 4774: 4769: 4764: 4732: 4695: 4685: 4670: 4665: 4660: 4645: 4630: 4625: 4553: 4548: 4543: 4523: 4513: 4508: 4503: 4488: 4483: 4431: 4426: 4406: 4376: 4351: 4336: 4306: 4259: 4249: 4229: 4224: 4209: 4204: 4118: 3839: 3834: 3729: 3375: 3370: 3365: 3360: 3355: 3263: 3258: 3253: 3248: 2972: 2920: 2243:"PMR (Polymorphic Memory Resources) fully described -- Nico Josuttis" 1302:"N4230: Nested namespace definition (Robert Kawulak, Andrew Tomazos)" 1010:
has had complete support for C++17 language features since version 8.
463: 335: 152: 5016: 4794: 4498: 4326: 4163: 4153: 4138: 4113: 4098: 4073: 4068: 3951: 3926: 3921: 3906: 3901: 3896: 3886: 3851: 3846: 3829: 3809: 3804: 3799: 3794: 3789: 3784: 3774: 3759: 3749: 3744: 3734: 3719: 3714: 3704: 3699: 3694: 3679: 3674: 3669: 3664: 3659: 3644: 3629: 3602: 3597: 3592: 3587: 3582: 3577: 3572: 3562: 3557: 3537: 3532: 3522: 3517: 3507: 3502: 3492: 3487: 3482: 3457: 3447: 3340: 3243: 3238: 3233: 3228: 3223: 3218: 3213: 3208: 3203: 2977: 2946: 2941: 2915: 860: 148: 1361:"N4266: Attributes for namespaces and enumerators (Richard Smith)" 5305: 5097: 5082: 4879: 4869: 4859: 4635: 4451: 4296: 4284: 3442: 3437: 3432: 3427: 3422: 3407: 3402: 3397: 3392: 3387: 3350: 3305: 3300: 3285: 3280: 3275: 2644: 2639: 2634: 2624: 2619: 2614: 1716: 1022:
15.8 (MSVC 19.15) and later supports all C++17 language features.
327: 323: 307: 303: 248: 243: 238: 228: 223: 218: 213: 1879: 993:
as a storage class specifier was removed. This keyword is still
633:(CTAD), introducing constructor deduction guides, e.g. allowing 5167: 5152: 5147: 5142: 4814: 4789: 4717: 4573: 4558: 4538: 4533: 4478: 4471: 4466: 4461: 4356: 4321: 4168: 3819: 3634: 3198: 2900: 2292:
IBM comment on preparing for a Trigraph-adverse future in C++17
501:) character literals (UTF-8 string literals have existed since 351: 783:, a read-only non-owning reference to a character sequence or 5202: 5177: 4899: 4784: 4655: 4436: 4301: 4173: 4148: 4143: 4123: 3497: 3467: 3462: 3183: 3168: 3158: 3153: 2930: 2905: 2852: 2599: 2588: 2212:"N4659: Working Draft, Standard for Programming Language C++" 2150:"N4659: Working Draft, Standard for Programming Language C++" 1774:"N4659: Working Draft, Standard for Programming Language C++" 1743:"N4640: Working Draft, Standard for Programming Language C++" 1606:"N4659: Working Draft, Standard for Programming Language C++" 1575:"N4659: Working Draft, Standard for Programming Language C++" 1468:"N4659: Working Draft, Standard for Programming Language C++" 1386:"N4640: Working Draft, Standard for Programming Language C++" 1013: 514: 492: 299: 1855:"Adopt Library Fundamentals V1 TS Components for C++17 (R1)" 764:
Exception specifications were made part of the function type
4849: 4712: 4705: 4371: 4316: 3916: 3527: 2992: 1927:"N4259: Wording for std::uncaught_exceptions (Herb Sutter)" 1550:"N4295: Folding expressions (Andrew Sutton, Richard Smith)" 1442: 918: 960:
Some deprecated types and functions were removed from the
660:
instead of requiring explicit constructor arguments types
5336: 5026: 4078: 2013:"N4280: Non-member size() and more (Riccardo Marcangelo)" 1497: 1087:"N4661 Editors' Report -- Programming Languages -- C++" 536:
Constant evaluation for all non-type template arguments
2557: 1191:"N3928: Extending static_assert, v2 (Walter E. Brown)" 1417:"N4267: Adding u8 character literals (Richard Smith)" 16:
2017 edition of the C++ programming language standard
3116: 917:to be replaced for data types intending to model a 1500:"Declaring non-type template parameters with auto" 1662:"Dynamic memory allocation for over-aligned data" 1016:5 and later supports all C++17 language features. 625:Some extensions on over-aligned memory allocation 5417: 1982: 1980: 1978: 1112:"ISO/IEC DIS 14882: Programming Languages — C++" 2533:"Announcing: MSVC Conforms to the C++ Standard" 2450:"Announcing: MSVC Conforms to the C++ Standard" 1988:"New standard library papers adopted for C++17" 1271: 1269: 1267: 767:Lambda expressions can capture "*this" by value 2391:"Clang - C++17, C++14, C++11 and C++98 Status" 2268:"N3981: Removing trigraphs??! (Richard Smith)" 2119:"Mathematical Special Functions for C++17, v5" 1330: 1328: 1326: 1324: 1322: 777:Most of Library Fundamentals TS I, including: 3102: 2573: 1975: 987:The (formerly deprecated) use of the keyword 606:and direct-initialization of objects of type 533:as the type for a non-type template parameter 268: 1336:"New core language papers adopted for C++17" 1264: 2094:"The Parallelism TS Should be Standardized" 2069:"Filesystem Library Proposal (Beman Dawes)" 2044:"N4284: Contiguous Iterators (Jens Maurer)" 1898:"std::basic_string_view - cppreference.com" 1319: 1134: 60:Learn how and when to remove these messages 3109: 3095: 2580: 2566: 702:or an additional helper template function 571:Structured binding declarations, allowing 275: 261: 1498:James Touton; Mike Spertus (2016-06-23). 921:of data as a byte rather than a character 189:Learn how and when to remove this message 120:Learn how and when to remove this message 1440: 941:header, for polymorphic memory resources 736:. The rules are effectively the same as 1637:"Selection statements with initializer" 1443:"Hexadecimal floating literals for C++" 802:, for holding single values of any type 5418: 2800:Resource acquisition is initialization 2418: 3090: 2561: 837:key-value associative data structures 2815:Substitution failure is not an error 2785:Curiously recurring template pattern 1146:from the original on 29 January 2020 406:Nested namespace definitions, e.g., 131: 66: 25: 3042:Comparison of programming languages 1687:"Class template argument deduction" 1001: 945: 13: 1026: 392:) in a template template parameter 14: 5457: 2421:"Visual C++ Language Conformance" 630:Class template argument deduction 612:from prvalue expressions of type 41:This article has multiple issues. 5400: 5399: 3071: 3070: 1886:from the original on 2020-09-08. 346:were given support for explicit 136: 71: 30: 5431:C++ programming language family 2543:from the original on 2018-08-26 2525: 2514:from the original on 2019-05-24 2496: 2485:from the original on 2018-06-04 2467: 2456:from the original on 2018-08-26 2442: 2431:from the original on 2018-06-19 2412: 2401:from the original on 2013-07-04 2383: 2372:from the original on 2018-04-04 2354: 2343:from the original on 2018-09-03 2329: 2318:from the original on 2017-10-20 2304: 2285: 2274:from the original on 2018-07-09 2260: 2249:from the original on 2021-08-28 2235: 2224:from the original on 2017-12-07 2204: 2193:from the original on 2017-03-25 2173: 2162:from the original on 2017-12-07 2142: 2131:from the original on 2016-04-05 2111: 2100:from the original on 2016-04-05 2086: 2075:from the original on 2016-07-20 2061: 2050:from the original on 2014-11-29 2036: 2025:from the original on 2015-03-09 2005: 1994:from the original on 2014-11-29 1964:from the original on 2015-04-27 1950: 1939:from the original on 2014-11-29 1919: 1908:from the original on 2016-06-17 1890: 1872: 1861:from the original on 2016-04-05 1847: 1836:from the original on 2017-08-22 1822: 1811:from the original on 2017-09-12 1797: 1786:from the original on 2017-12-07 1766: 1755:from the original on 2017-03-12 1735: 1724:from the original on 2019-08-21 1704: 1693:from the original on 2019-01-31 1679: 1668:from the original on 2017-09-08 1654: 1643:from the original on 2017-10-06 1629: 1618:from the original on 2017-12-07 1598: 1587:from the original on 2017-12-07 1567: 1556:from the original on 2015-04-04 1542: 1531:from the original on 2016-03-12 1517: 1506:from the original on 2017-09-16 1491: 1480:from the original on 2017-12-07 1460: 1449:from the original on 2022-09-21 1434: 1423:from the original on 2015-10-28 1409: 1398:from the original on 2017-03-12 1378: 1367:from the original on 2016-03-06 1353: 1342:from the original on 2015-04-27 1308:from the original on 2015-08-03 1283:from the original on 2015-03-19 1253:from the original on 2015-08-10 1228:from the original on 2015-08-11 1203:from the original on 2015-08-11 1172:from the original on 2013-01-29 1093:from the original on 2020-02-04 988: 757: 751: 742: 703: 661: 634: 613: 607: 595: 589: 572: 552: 546: 528: 496: 485: 479: 473: 431: 407: 403:deduction from braced-init-list 397: 387: 381: 372: 357: 322:, following C++0x or C++1x for 49:or discuss these issues on the 5436:Programming language standards 3037:Comparison of ALGOL 68 and C++ 1294: 1239: 1214: 1183: 1158: 1128: 1104: 1079: 151:format but may read better as 1: 1072: 1140:"C++17 is formally approved" 371:Making the text message for 306:, and was later replaced by 7: 2833:Comparison of C++ compilers 1277:"Updates to my trip report" 1050: 365: 91:. The specific problem is: 10: 5462: 3032:Comparison of Java and C++ 3027:Compatibility of C and C++ 859:Definition of "contiguous 771: 313: 18: 5395: 5319: 5045: 4197: 3146: 3128: 3068: 3050: 3017: 3001: 2960: 2886: 2823: 2772: 2739: 2658: 2595: 1067:C17 (C standard revision) 1062:C11 (C standard revision) 924:Logical operator traits: 332:Standard Template Library 21:C17 (C standard revision) 2810:Special member functions 2726:Template metaprogramming 2337:"C++ Keywords: register" 2181:"A byte type definition" 886:Additional mathematical 820:New insertion functions 808:std::uncaught_exceptions 472:New standard attributes 462:Allowing attributes for 354:enhancements were made. 19:Not to be confused with 2587: 939:<memory_resource> 812:std::uncaught_exception 298:14882 standard for the 160:converting this article 2537:devblogs.microsoft.com 810:, as a replacement of 545:A compile-time static 539:Fold expressions, for 386:(as an alternative to 205:C++ language revisions 2868:Oracle Solaris Studio 2504:"libc++ C++17 Status" 622:for more information. 93:Article reads like a 2896:Comparison of C IDEs 2706:Operator overloading 2691:Function overloading 1748:. pp. 431–433. 1391:. pp. 193–195. 1166:"ISO/IEC 14882:2017" 1138:(6 September 2017). 290:is a version of the 102:improve this article 87:to meet Knowledge's 2795:One Definition Rule 2475:"Chapter 1. Status" 1902:en.cppreference.com 970:std::random_shuffle 792:, for representing 734:one definition rule 604:copy-initialization 3122:by standard number 2961:Superset languages 2863:Intel C++ Compiler 2681:Exception handling 2425:docs.microsoft.com 2297:2018-09-11 at the 1044:Visual Studio 2019 1039:Visual Studio 2017 1020:Visual Studio 2017 892:elliptic integrals 834:std::unordered_map 816:exception handling 580:getTwoReturnValues 541:variadic templates 162:, if appropriate. 5413: 5412: 3136:ISO romanizations 3084: 3083: 3060:Bjarne Stroustrup 2843:Borland Turbo C++ 2790:Most vexing parse 2731:Virtual functions 1089:. 21 March 2017. 888:special functions 872:boost::filesystem 870:library based on 342:<algorithm> 285: 284: 199: 198: 191: 181: 180: 130: 129: 122: 89:quality standards 80:This article may 64: 5453: 5403: 5402: 3123: 3111: 3104: 3097: 3088: 3087: 3074: 3073: 2741:Standard Library 2696:Move constructor 2685:Exception safety 2676:Copy constructor 2582: 2575: 2568: 2559: 2558: 2552: 2551: 2549: 2548: 2529: 2523: 2522: 2520: 2519: 2500: 2494: 2493: 2491: 2490: 2471: 2465: 2464: 2462: 2461: 2446: 2440: 2439: 2437: 2436: 2416: 2410: 2409: 2407: 2406: 2387: 2381: 2380: 2378: 2377: 2358: 2352: 2351: 2349: 2348: 2333: 2327: 2326: 2324: 2323: 2308: 2302: 2289: 2283: 2282: 2280: 2279: 2264: 2258: 2257: 2255: 2254: 2239: 2233: 2232: 2230: 2229: 2223: 2216: 2208: 2202: 2201: 2199: 2198: 2192: 2185: 2177: 2171: 2170: 2168: 2167: 2161: 2154: 2146: 2140: 2139: 2137: 2136: 2130: 2123: 2115: 2109: 2108: 2106: 2105: 2090: 2084: 2083: 2081: 2080: 2065: 2059: 2058: 2056: 2055: 2040: 2034: 2033: 2031: 2030: 2024: 2017: 2009: 2003: 2002: 2000: 1999: 1984: 1973: 1972: 1970: 1969: 1954: 1948: 1947: 1945: 1944: 1938: 1931: 1923: 1917: 1916: 1914: 1913: 1894: 1888: 1887: 1880:"Current Status" 1876: 1870: 1869: 1867: 1866: 1851: 1845: 1844: 1842: 1841: 1826: 1820: 1819: 1817: 1816: 1801: 1795: 1794: 1792: 1791: 1785: 1778: 1770: 1764: 1763: 1761: 1760: 1754: 1747: 1739: 1733: 1732: 1730: 1729: 1708: 1702: 1701: 1699: 1698: 1683: 1677: 1676: 1674: 1673: 1658: 1652: 1651: 1649: 1648: 1633: 1627: 1626: 1624: 1623: 1617: 1610: 1602: 1596: 1595: 1593: 1592: 1586: 1579: 1571: 1565: 1564: 1562: 1561: 1546: 1540: 1539: 1537: 1536: 1521: 1515: 1514: 1512: 1511: 1495: 1489: 1488: 1486: 1485: 1479: 1472: 1464: 1458: 1457: 1455: 1454: 1438: 1432: 1431: 1429: 1428: 1413: 1407: 1406: 1404: 1403: 1397: 1390: 1382: 1376: 1375: 1373: 1372: 1357: 1351: 1350: 1348: 1347: 1332: 1317: 1316: 1314: 1313: 1298: 1292: 1291: 1289: 1288: 1273: 1262: 1261: 1259: 1258: 1243: 1237: 1236: 1234: 1233: 1218: 1212: 1211: 1209: 1208: 1202: 1195: 1187: 1181: 1180: 1178: 1177: 1162: 1156: 1155: 1153: 1151: 1132: 1126: 1125: 1123: 1117:. Archived from 1116: 1108: 1102: 1101: 1099: 1098: 1083: 1002:Compiler support 992: 991: 983: 979: 975: 971: 967: 962:standard library 946:Removed features 940: 935: 931: 930:std::disjunction 927: 926:std::conjunction 912: 902: 896:Bessel functions 873: 856: 852: 848: 835: 831: 827: 826:insert_or_assign 823: 813: 809: 801: 794:optional objects 791: 782: 781:std::string_view 761: 760: 755: 754: 746: 745: 738:inline functions 728: 727: 724: 721: 718: 715: 712: 709: 706: 701: 700: 697: 694: 691: 688: 685: 682: 679: 676: 673: 670: 667: 664: 659: 658: 655: 652: 649: 646: 643: 640: 637: 632: 631: 617: 616: 611: 610: 599: 598: 593: 592: 588:Initializers in 585: 584: 581: 578: 575: 568: 567: 564: 561: 558: 555: 550: 549: 532: 531: 511:C0 control codes 500: 499: 489: 488: 483: 482: 477: 476: 459: 458: 455: 452: 449: 446: 443: 440: 437: 434: 429: 428: 425: 422: 419: 416: 413: 410: 401: 400: 391: 390: 385: 384: 376: 375: 343: 334:, although some 277: 270: 263: 201: 200: 194: 187: 176: 173: 167: 158:You can help by 140: 139: 132: 125: 118: 114: 111: 105: 75: 74: 67: 56: 34: 33: 26: 5461: 5460: 5456: 5455: 5454: 5452: 5451: 5450: 5416: 5415: 5414: 5409: 5391: 5315: 5041: 4193: 3142: 3124: 3121: 3115: 3085: 3080: 3064: 3046: 3020:other languages 3019: 3013: 2997: 2956: 2882: 2819: 2768: 2735: 2654: 2591: 2586: 2556: 2555: 2546: 2544: 2531: 2530: 2526: 2517: 2515: 2502: 2501: 2497: 2488: 2486: 2473: 2472: 2468: 2459: 2457: 2448: 2447: 2443: 2434: 2432: 2417: 2413: 2404: 2402: 2389: 2388: 2384: 2375: 2373: 2360: 2359: 2355: 2346: 2344: 2335: 2334: 2330: 2321: 2319: 2310: 2309: 2305: 2299:Wayback Machine 2290: 2286: 2277: 2275: 2266: 2265: 2261: 2252: 2250: 2241: 2240: 2236: 2227: 2225: 2221: 2214: 2210: 2209: 2205: 2196: 2194: 2190: 2183: 2179: 2178: 2174: 2165: 2163: 2159: 2152: 2148: 2147: 2143: 2134: 2132: 2128: 2121: 2117: 2116: 2112: 2103: 2101: 2092: 2091: 2087: 2078: 2076: 2067: 2066: 2062: 2053: 2051: 2042: 2041: 2037: 2028: 2026: 2022: 2015: 2011: 2010: 2006: 1997: 1995: 1986: 1985: 1976: 1967: 1965: 1956: 1955: 1951: 1942: 1940: 1936: 1929: 1925: 1924: 1920: 1911: 1909: 1896: 1895: 1891: 1878: 1877: 1873: 1864: 1862: 1853: 1852: 1848: 1839: 1837: 1828: 1827: 1823: 1814: 1812: 1803: 1802: 1798: 1789: 1787: 1783: 1776: 1772: 1771: 1767: 1758: 1756: 1752: 1745: 1741: 1740: 1736: 1727: 1725: 1710: 1709: 1705: 1696: 1694: 1685: 1684: 1680: 1671: 1669: 1660: 1659: 1655: 1646: 1644: 1635: 1634: 1630: 1621: 1619: 1615: 1608: 1604: 1603: 1599: 1590: 1588: 1584: 1577: 1573: 1572: 1568: 1559: 1557: 1548: 1547: 1543: 1534: 1532: 1523: 1522: 1518: 1509: 1507: 1496: 1492: 1483: 1481: 1477: 1470: 1466: 1465: 1461: 1452: 1450: 1439: 1435: 1426: 1424: 1415: 1414: 1410: 1401: 1399: 1395: 1388: 1384: 1383: 1379: 1370: 1368: 1359: 1358: 1354: 1345: 1343: 1334: 1333: 1320: 1311: 1309: 1300: 1299: 1295: 1286: 1284: 1275: 1274: 1265: 1256: 1254: 1245: 1244: 1240: 1231: 1229: 1220: 1219: 1215: 1206: 1204: 1200: 1193: 1189: 1188: 1184: 1175: 1173: 1164: 1163: 1159: 1149: 1147: 1133: 1129: 1121: 1114: 1110: 1109: 1105: 1096: 1094: 1085: 1084: 1080: 1075: 1053: 1029: 1027:Library support 1004: 997:but now unused. 989: 981: 977: 974:std::unique_ptr 973: 969: 965: 948: 938: 933: 929: 925: 910: 900: 871: 854: 850: 846: 833: 829: 825: 821: 811: 807: 799: 789: 780: 774: 758: 752: 743: 725: 722: 719: 716: 713: 710: 707: 704: 698: 695: 692: 689: 686: 683: 680: 677: 674: 671: 668: 665: 662: 656: 653: 650: 647: 644: 641: 638: 635: 629: 628: 614: 608: 596: 590: 582: 579: 576: 573: 565: 562: 559: 556: 553: 547: 529: 497: 486: 480: 474: 456: 453: 450: 447: 444: 441: 438: 435: 432: 426: 423: 420: 417: 414: 411: 408: 398: 388: 382: 373: 368: 360: 348:parallelization 341: 316: 281: 195: 184: 183: 182: 177: 171: 168: 157: 141: 137: 126: 115: 109: 106: 99: 76: 72: 35: 31: 24: 17: 12: 11: 5: 5459: 5449: 5448: 5443: 5438: 5433: 5428: 5411: 5410: 5408: 5407: 5396: 5393: 5392: 5390: 5389: 5384: 5379: 5374: 5369: 5364: 5359: 5354: 5349: 5344: 5339: 5334: 5329: 5323: 5321: 5317: 5316: 5314: 5313: 5308: 5303: 5298: 5295: 5290: 5285: 5280: 5275: 5270: 5265: 5260: 5255: 5250: 5245: 5240: 5235: 5230: 5225: 5220: 5215: 5210: 5205: 5200: 5195: 5190: 5185: 5180: 5175: 5170: 5165: 5160: 5155: 5150: 5145: 5140: 5135: 5130: 5125: 5120: 5115: 5110: 5105: 5100: 5095: 5090: 5085: 5080: 5075: 5070: 5065: 5060: 5055: 5049: 5047: 5043: 5042: 5040: 5039: 5034: 5029: 5024: 5019: 5014: 5009: 5004: 4999: 4994: 4989: 4984: 4979: 4974: 4969: 4964: 4959: 4954: 4949: 4944: 4939: 4934: 4929: 4924: 4923: 4922: 4917: 4907: 4902: 4897: 4892: 4887: 4882: 4877: 4872: 4867: 4862: 4857: 4852: 4847: 4842: 4837: 4832: 4827: 4822: 4817: 4812: 4807: 4802: 4797: 4792: 4787: 4782: 4777: 4772: 4767: 4762: 4757: 4752: 4751: 4750: 4740: 4735: 4730: 4725: 4720: 4715: 4710: 4709: 4708: 4703: 4693: 4688: 4683: 4678: 4673: 4668: 4663: 4658: 4653: 4648: 4643: 4638: 4633: 4628: 4623: 4622: 4621: 4616: 4611: 4606: 4601: 4596: 4591: 4586: 4581: 4571: 4566: 4561: 4556: 4551: 4546: 4541: 4536: 4531: 4526: 4521: 4516: 4511: 4506: 4501: 4496: 4491: 4486: 4481: 4476: 4475: 4474: 4469: 4459: 4454: 4449: 4444: 4439: 4434: 4429: 4424: 4419: 4414: 4404: 4399: 4394: 4389: 4384: 4379: 4374: 4369: 4364: 4359: 4354: 4349: 4344: 4339: 4334: 4329: 4324: 4319: 4314: 4309: 4304: 4299: 4294: 4289: 4288: 4287: 4282: 4277: 4272: 4267: 4257: 4252: 4247: 4242: 4237: 4232: 4227: 4222: 4217: 4212: 4207: 4201: 4199: 4195: 4194: 4192: 4191: 4186: 4181: 4176: 4171: 4166: 4161: 4156: 4151: 4146: 4141: 4136: 4131: 4126: 4121: 4116: 4111: 4106: 4101: 4096: 4091: 4086: 4081: 4076: 4071: 4066: 4061: 4060: 4059: 4054: 4049: 4044: 4039: 4034: 4029: 4024: 4019: 4014: 4009: 4004: 3999: 3994: 3989: 3984: 3979: 3969: 3964: 3959: 3954: 3949: 3944: 3939: 3934: 3929: 3924: 3919: 3914: 3909: 3904: 3899: 3894: 3889: 3884: 3879: 3874: 3869: 3864: 3859: 3854: 3849: 3844: 3843: 3842: 3832: 3827: 3822: 3817: 3812: 3807: 3802: 3797: 3792: 3787: 3782: 3777: 3772: 3767: 3762: 3757: 3752: 3747: 3742: 3737: 3732: 3727: 3722: 3717: 3712: 3707: 3702: 3697: 3692: 3687: 3682: 3677: 3672: 3667: 3662: 3657: 3652: 3647: 3642: 3637: 3632: 3627: 3622: 3621: 3620: 3615: 3610: 3600: 3595: 3590: 3585: 3580: 3575: 3570: 3565: 3560: 3555: 3550: 3545: 3540: 3535: 3530: 3525: 3520: 3515: 3510: 3505: 3500: 3495: 3490: 3485: 3480: 3475: 3470: 3465: 3460: 3455: 3450: 3445: 3440: 3435: 3430: 3425: 3420: 3415: 3410: 3405: 3400: 3395: 3390: 3385: 3380: 3379: 3378: 3373: 3368: 3363: 3358: 3348: 3343: 3338: 3333: 3328: 3323: 3318: 3313: 3308: 3303: 3298: 3293: 3288: 3283: 3278: 3273: 3268: 3267: 3266: 3261: 3256: 3251: 3246: 3241: 3236: 3231: 3226: 3221: 3216: 3211: 3206: 3196: 3191: 3186: 3181: 3176: 3171: 3166: 3161: 3156: 3150: 3148: 3144: 3143: 3129: 3126: 3125: 3114: 3113: 3106: 3099: 3091: 3082: 3081: 3069: 3066: 3065: 3063: 3062: 3056: 3054: 3048: 3047: 3045: 3044: 3039: 3034: 3029: 3023: 3021: 3015: 3014: 3012: 3011: 3005: 3003: 2999: 2998: 2996: 2995: 2990: 2985: 2980: 2975: 2970: 2964: 2962: 2958: 2957: 2955: 2954: 2949: 2944: 2939: 2933: 2928: 2923: 2918: 2913: 2908: 2903: 2898: 2892: 2890: 2884: 2883: 2881: 2880: 2875: 2870: 2865: 2860: 2855: 2850: 2845: 2840: 2835: 2829: 2827: 2821: 2820: 2818: 2817: 2812: 2807: 2802: 2797: 2792: 2787: 2782: 2776: 2774: 2770: 2769: 2767: 2766: 2761: 2756: 2754:Smart pointers 2751: 2745: 2743: 2737: 2736: 2734: 2733: 2728: 2723: 2718: 2713: 2708: 2703: 2701:new and delete 2698: 2693: 2688: 2678: 2673: 2668: 2662: 2660: 2656: 2655: 2653: 2652: 2647: 2642: 2637: 2632: 2627: 2622: 2617: 2612: 2607: 2602: 2596: 2593: 2592: 2585: 2584: 2577: 2570: 2562: 2554: 2553: 2539:. 7 May 2018. 2524: 2495: 2466: 2452:. 7 May 2018. 2441: 2411: 2395:clang.llvm.org 2382: 2353: 2328: 2303: 2284: 2270:. 2014-05-06. 2259: 2234: 2203: 2172: 2141: 2110: 2085: 2060: 2035: 2004: 1974: 1949: 1918: 1889: 1871: 1846: 1821: 1796: 1765: 1734: 1703: 1678: 1653: 1628: 1597: 1566: 1541: 1516: 1490: 1459: 1441:Thomas Köppe. 1433: 1408: 1377: 1352: 1318: 1293: 1263: 1238: 1213: 1182: 1157: 1127: 1124:on 2017-03-25. 1103: 1077: 1076: 1074: 1071: 1070: 1069: 1064: 1059: 1052: 1049: 1048: 1047: 1036: 1033: 1028: 1025: 1024: 1023: 1017: 1011: 1003: 1000: 999: 998: 985: 984:, and lambdas. 958: 947: 944: 943: 942: 936: 922: 908: 898: 884: 874: 864: 857: 839: 818: 805: 804: 803: 797: 787: 773: 770: 769: 768: 765: 762: 748: 740: 730: 626: 623: 601: 586: 569: 551:with the form 543: 537: 534: 525: 522:floating-point 518: 490: 470: 460: 404: 395:New rules for 393: 378: 367: 364: 359: 356: 326:and C++1y for 315: 312: 283: 282: 280: 279: 272: 265: 257: 254: 253: 252: 251: 246: 241: 236: 231: 226: 221: 216: 208: 207: 197: 196: 179: 178: 144: 142: 135: 128: 127: 79: 77: 70: 65: 39: 38: 36: 29: 15: 9: 6: 4: 3: 2: 5458: 5447: 5446:ISO standards 5444: 5442: 5441:IEC standards 5439: 5437: 5434: 5432: 5429: 5427: 5424: 5423: 5421: 5406: 5398: 5397: 5394: 5388: 5385: 5383: 5380: 5378: 5375: 5373: 5370: 5368: 5365: 5363: 5360: 5358: 5355: 5353: 5350: 5348: 5345: 5343: 5340: 5338: 5335: 5333: 5330: 5328: 5325: 5324: 5322: 5318: 5312: 5309: 5307: 5304: 5302: 5299: 5296: 5294: 5291: 5289: 5286: 5284: 5281: 5279: 5276: 5274: 5271: 5269: 5266: 5264: 5261: 5259: 5256: 5254: 5251: 5249: 5246: 5244: 5241: 5239: 5236: 5234: 5231: 5229: 5226: 5224: 5221: 5219: 5216: 5214: 5211: 5209: 5206: 5204: 5201: 5199: 5196: 5194: 5191: 5189: 5186: 5184: 5181: 5179: 5176: 5174: 5171: 5169: 5166: 5164: 5161: 5159: 5156: 5154: 5151: 5149: 5146: 5144: 5141: 5139: 5136: 5134: 5131: 5129: 5126: 5124: 5121: 5119: 5116: 5114: 5111: 5109: 5106: 5104: 5101: 5099: 5096: 5094: 5091: 5089: 5086: 5084: 5081: 5079: 5076: 5074: 5071: 5069: 5066: 5064: 5061: 5059: 5056: 5054: 5051: 5050: 5048: 5044: 5038: 5035: 5033: 5030: 5028: 5025: 5023: 5020: 5018: 5015: 5013: 5010: 5008: 5005: 5003: 5000: 4998: 4995: 4993: 4990: 4988: 4985: 4983: 4980: 4978: 4975: 4973: 4970: 4968: 4965: 4963: 4960: 4958: 4955: 4953: 4950: 4948: 4945: 4943: 4940: 4938: 4935: 4933: 4930: 4928: 4925: 4921: 4918: 4916: 4913: 4912: 4911: 4908: 4906: 4903: 4901: 4898: 4896: 4893: 4891: 4888: 4886: 4883: 4881: 4878: 4876: 4873: 4871: 4868: 4866: 4863: 4861: 4858: 4856: 4853: 4851: 4848: 4846: 4843: 4841: 4838: 4836: 4833: 4831: 4828: 4826: 4823: 4821: 4818: 4816: 4813: 4811: 4808: 4806: 4803: 4801: 4798: 4796: 4793: 4791: 4788: 4786: 4783: 4781: 4778: 4776: 4773: 4771: 4768: 4766: 4763: 4761: 4758: 4756: 4753: 4749: 4746: 4745: 4744: 4741: 4739: 4736: 4734: 4731: 4729: 4726: 4724: 4721: 4719: 4716: 4714: 4711: 4707: 4704: 4702: 4699: 4698: 4697: 4694: 4692: 4689: 4687: 4684: 4682: 4679: 4677: 4674: 4672: 4669: 4667: 4664: 4662: 4659: 4657: 4654: 4652: 4649: 4647: 4644: 4642: 4639: 4637: 4634: 4632: 4629: 4627: 4624: 4620: 4617: 4615: 4612: 4610: 4607: 4605: 4602: 4600: 4597: 4595: 4592: 4590: 4587: 4585: 4582: 4580: 4577: 4576: 4575: 4572: 4570: 4567: 4565: 4562: 4560: 4557: 4555: 4552: 4550: 4547: 4545: 4542: 4540: 4537: 4535: 4532: 4530: 4527: 4525: 4522: 4520: 4517: 4515: 4512: 4510: 4507: 4505: 4502: 4500: 4497: 4495: 4492: 4490: 4487: 4485: 4482: 4480: 4477: 4473: 4470: 4468: 4465: 4464: 4463: 4460: 4458: 4455: 4453: 4450: 4448: 4445: 4443: 4440: 4438: 4435: 4433: 4430: 4428: 4425: 4423: 4420: 4418: 4415: 4412: 4408: 4405: 4403: 4400: 4398: 4395: 4393: 4390: 4388: 4385: 4383: 4380: 4378: 4375: 4373: 4370: 4368: 4365: 4363: 4360: 4358: 4355: 4353: 4350: 4348: 4345: 4343: 4340: 4338: 4335: 4333: 4330: 4328: 4325: 4323: 4320: 4318: 4315: 4313: 4310: 4308: 4305: 4303: 4300: 4298: 4295: 4293: 4290: 4286: 4283: 4281: 4278: 4276: 4273: 4271: 4268: 4266: 4263: 4262: 4261: 4258: 4256: 4253: 4251: 4248: 4246: 4243: 4241: 4238: 4236: 4233: 4231: 4228: 4226: 4223: 4221: 4218: 4216: 4213: 4211: 4208: 4206: 4203: 4202: 4200: 4196: 4190: 4187: 4185: 4182: 4180: 4177: 4175: 4172: 4170: 4167: 4165: 4162: 4160: 4157: 4155: 4152: 4150: 4147: 4145: 4142: 4140: 4137: 4135: 4132: 4130: 4127: 4125: 4122: 4120: 4117: 4115: 4112: 4110: 4107: 4105: 4102: 4100: 4097: 4095: 4092: 4090: 4087: 4085: 4082: 4080: 4077: 4075: 4072: 4070: 4067: 4065: 4062: 4058: 4055: 4053: 4050: 4048: 4045: 4043: 4040: 4038: 4035: 4033: 4030: 4028: 4025: 4023: 4020: 4018: 4015: 4013: 4010: 4008: 4005: 4003: 4000: 3998: 3995: 3993: 3990: 3988: 3985: 3983: 3980: 3978: 3975: 3974: 3973: 3970: 3968: 3965: 3963: 3960: 3958: 3955: 3953: 3950: 3948: 3945: 3943: 3940: 3938: 3935: 3933: 3930: 3928: 3925: 3923: 3920: 3918: 3915: 3913: 3910: 3908: 3905: 3903: 3900: 3898: 3895: 3893: 3890: 3888: 3885: 3883: 3880: 3878: 3875: 3873: 3870: 3868: 3865: 3863: 3860: 3858: 3855: 3853: 3850: 3848: 3845: 3841: 3838: 3837: 3836: 3833: 3831: 3828: 3826: 3823: 3821: 3818: 3816: 3813: 3811: 3808: 3806: 3803: 3801: 3798: 3796: 3793: 3791: 3788: 3786: 3783: 3781: 3778: 3776: 3773: 3771: 3768: 3766: 3763: 3761: 3758: 3756: 3753: 3751: 3748: 3746: 3743: 3741: 3738: 3736: 3733: 3731: 3728: 3726: 3723: 3721: 3718: 3716: 3713: 3711: 3708: 3706: 3703: 3701: 3698: 3696: 3693: 3691: 3688: 3686: 3683: 3681: 3678: 3676: 3673: 3671: 3668: 3666: 3663: 3661: 3658: 3656: 3653: 3651: 3648: 3646: 3643: 3641: 3638: 3636: 3633: 3631: 3628: 3626: 3623: 3619: 3616: 3614: 3611: 3609: 3606: 3605: 3604: 3601: 3599: 3596: 3594: 3591: 3589: 3586: 3584: 3581: 3579: 3576: 3574: 3571: 3569: 3566: 3564: 3561: 3559: 3556: 3554: 3551: 3549: 3546: 3544: 3541: 3539: 3536: 3534: 3531: 3529: 3526: 3524: 3521: 3519: 3516: 3514: 3511: 3509: 3506: 3504: 3501: 3499: 3496: 3494: 3491: 3489: 3486: 3484: 3481: 3479: 3476: 3474: 3471: 3469: 3466: 3464: 3461: 3459: 3456: 3454: 3451: 3449: 3446: 3444: 3441: 3439: 3436: 3434: 3431: 3429: 3426: 3424: 3421: 3419: 3416: 3414: 3411: 3409: 3406: 3404: 3401: 3399: 3396: 3394: 3391: 3389: 3386: 3384: 3381: 3377: 3374: 3372: 3369: 3367: 3364: 3362: 3359: 3357: 3354: 3353: 3352: 3349: 3347: 3344: 3342: 3339: 3337: 3334: 3332: 3329: 3327: 3324: 3322: 3319: 3317: 3314: 3312: 3309: 3307: 3304: 3302: 3299: 3297: 3294: 3292: 3289: 3287: 3284: 3282: 3279: 3277: 3274: 3272: 3269: 3265: 3262: 3260: 3257: 3255: 3252: 3250: 3247: 3245: 3242: 3240: 3237: 3235: 3232: 3230: 3227: 3225: 3222: 3220: 3217: 3215: 3212: 3210: 3207: 3205: 3202: 3201: 3200: 3197: 3195: 3192: 3190: 3187: 3185: 3182: 3180: 3177: 3175: 3172: 3170: 3167: 3165: 3162: 3160: 3157: 3155: 3152: 3151: 3149: 3145: 3141: 3140:IEC standards 3137: 3133: 3132:ISO standards 3127: 3119: 3112: 3107: 3105: 3100: 3098: 3093: 3092: 3089: 3079: 3078: 3067: 3061: 3058: 3057: 3055: 3053: 3049: 3043: 3040: 3038: 3035: 3033: 3030: 3028: 3025: 3024: 3022: 3016: 3010: 3007: 3006: 3004: 3000: 2994: 2991: 2989: 2986: 2984: 2981: 2979: 2976: 2974: 2971: 2969: 2968:Objective-C++ 2966: 2965: 2963: 2959: 2953: 2950: 2948: 2945: 2943: 2940: 2938: 2937:Visual Studio 2934: 2932: 2929: 2927: 2924: 2922: 2919: 2917: 2914: 2912: 2909: 2907: 2904: 2902: 2899: 2897: 2894: 2893: 2891: 2889: 2885: 2879: 2876: 2874: 2871: 2869: 2866: 2864: 2861: 2859: 2856: 2854: 2851: 2849: 2846: 2844: 2841: 2839: 2836: 2834: 2831: 2830: 2828: 2826: 2822: 2816: 2813: 2811: 2808: 2806: 2805:Rule of three 2803: 2801: 2798: 2796: 2793: 2791: 2788: 2786: 2783: 2781: 2778: 2777: 2775: 2771: 2765: 2762: 2760: 2757: 2755: 2752: 2750: 2747: 2746: 2744: 2742: 2738: 2732: 2729: 2727: 2724: 2722: 2719: 2717: 2714: 2712: 2709: 2707: 2704: 2702: 2699: 2697: 2694: 2692: 2689: 2686: 2682: 2679: 2677: 2674: 2672: 2669: 2667: 2664: 2663: 2661: 2657: 2651: 2648: 2646: 2643: 2641: 2638: 2636: 2633: 2631: 2628: 2626: 2623: 2621: 2618: 2616: 2613: 2611: 2608: 2606: 2603: 2601: 2598: 2597: 2594: 2590: 2583: 2578: 2576: 2571: 2569: 2564: 2563: 2560: 2542: 2538: 2534: 2528: 2513: 2509: 2505: 2499: 2484: 2480: 2476: 2470: 2455: 2451: 2445: 2430: 2426: 2422: 2415: 2400: 2396: 2392: 2386: 2371: 2367: 2363: 2357: 2342: 2338: 2332: 2317: 2313: 2307: 2300: 2296: 2293: 2288: 2273: 2269: 2263: 2248: 2244: 2238: 2220: 2213: 2207: 2189: 2182: 2176: 2158: 2151: 2145: 2127: 2120: 2114: 2099: 2095: 2089: 2074: 2070: 2064: 2049: 2045: 2039: 2021: 2014: 2008: 1993: 1989: 1983: 1981: 1979: 1963: 1959: 1953: 1935: 1928: 1922: 1907: 1903: 1899: 1893: 1885: 1881: 1875: 1860: 1856: 1850: 1835: 1831: 1825: 1810: 1806: 1800: 1782: 1775: 1769: 1751: 1744: 1738: 1723: 1719: 1718: 1713: 1707: 1692: 1688: 1682: 1667: 1663: 1657: 1642: 1638: 1632: 1614: 1607: 1601: 1583: 1576: 1570: 1555: 1551: 1545: 1530: 1526: 1520: 1505: 1501: 1494: 1476: 1469: 1463: 1448: 1444: 1437: 1422: 1418: 1412: 1394: 1387: 1381: 1366: 1362: 1356: 1341: 1337: 1331: 1329: 1327: 1325: 1323: 1307: 1303: 1297: 1282: 1278: 1272: 1270: 1268: 1252: 1248: 1242: 1227: 1223: 1217: 1199: 1192: 1186: 1171: 1167: 1161: 1145: 1141: 1137: 1131: 1120: 1113: 1107: 1092: 1088: 1082: 1078: 1068: 1065: 1063: 1060: 1058: 1057:C++ compilers 1055: 1054: 1045: 1040: 1037: 1034: 1031: 1030: 1021: 1018: 1015: 1012: 1009: 1006: 1005: 996: 986: 966:std::auto_ptr 963: 959: 957:were removed. 956: 953: 952: 951: 937: 934:std::negation 923: 920: 916: 909: 906: 899: 897: 893: 889: 885: 882: 878: 875: 869: 865: 862: 858: 844: 840: 838: 819: 817: 806: 798: 795: 790:std::optional 788: 786: 779: 778: 776: 775: 766: 763: 749: 744:__has_include 741: 739: 735: 731: 627: 624: 621: 605: 602: 587: 570: 544: 542: 538: 535: 526: 523: 519: 516: 512: 508: 504: 494: 491: 471: 469: 465: 461: 405: 402: 394: 379: 374:static_assert 370: 369: 363: 355: 353: 349: 345: 337: 333: 329: 325: 321: 311: 309: 305: 301: 297: 293: 289: 278: 273: 271: 266: 264: 259: 258: 256: 255: 250: 247: 245: 242: 240: 237: 235: 232: 230: 227: 225: 222: 220: 217: 215: 212: 211: 210: 209: 206: 203: 202: 193: 190: 175: 172:February 2023 166:is available. 165: 161: 155: 154: 150: 145:This article 143: 134: 133: 124: 121: 113: 110:February 2023 103: 98: 96: 90: 86: 85: 78: 69: 68: 63: 61: 54: 53: 48: 47: 42: 37: 28: 27: 22: 5258:27000 series 3075: 3009:Embedded C++ 2911:Code::Blocks 2878:Watcom C/C++ 2629: 2545:. Retrieved 2536: 2527: 2516:. Retrieved 2507: 2498: 2487:. Retrieved 2478: 2469: 2458:. Retrieved 2444: 2433:. Retrieved 2424: 2419:corob-msft. 2414: 2403:. Retrieved 2394: 2385: 2374:. Retrieved 2365: 2356: 2345:. Retrieved 2331: 2320:. Retrieved 2306: 2287: 2276:. Retrieved 2262: 2251:. Retrieved 2237: 2226:. Retrieved 2217:. §23.15.8. 2206: 2195:. Retrieved 2175: 2164:. Retrieved 2144: 2133:. Retrieved 2113: 2102:. Retrieved 2088: 2077:. Retrieved 2063: 2052:. Retrieved 2038: 2027:. Retrieved 2007: 1996:. Retrieved 1966:. Retrieved 1952: 1941:. Retrieved 1921: 1910:. Retrieved 1901: 1892: 1874: 1863:. Retrieved 1849: 1838:. Retrieved 1824: 1813:. Retrieved 1799: 1788:. Retrieved 1768: 1757:. Retrieved 1737: 1726:. Retrieved 1715: 1706: 1695:. Retrieved 1681: 1670:. Retrieved 1656: 1645:. Retrieved 1631: 1620:. Retrieved 1600: 1589:. Retrieved 1569: 1558:. Retrieved 1544: 1533:. Retrieved 1519: 1508:. Retrieved 1493: 1482:. Retrieved 1462: 1451:. Retrieved 1436: 1425:. Retrieved 1411: 1400:. Retrieved 1380: 1369:. Retrieved 1355: 1344:. Retrieved 1310:. Retrieved 1296: 1285:. Retrieved 1255:. Retrieved 1241: 1230:. Retrieved 1216: 1205:. Retrieved 1185: 1174:. Retrieved 1160: 1150:12 September 1148:. Retrieved 1130: 1119:the original 1106: 1095:. Retrieved 1081: 978:std::shuffle 964:, including 949: 905:tagged union 901:std::variant 890:, including 879:versions of 785:string-slice 620:copy elision 520:Hexadecimal 361: 358:New features 319: 317: 287: 286: 233: 185: 169: 164:Editing help 146: 116: 107: 100:Please help 92: 81: 57: 50: 44: 43:Please help 40: 5046:20000–29999 4198:10000–19999 3018:Relative to 2838:Borland C++ 2749:I/O Streams 2479:gcc.gnu.org 2366:gcc.gnu.org 1473:. §5.13.4. 1136:Herb Sutter 913:, allowing 868:file system 822:try_emplace 756:changed to 753:__cplusplus 507:Basic Latin 468:enumerators 430:instead of 104:if you can. 5420:Categories 4825:16949 (TS) 4422:11941 (TR) 3120:standards 2952:Qt Creator 2935:Microsoft 2873:Visual C++ 2848:C++Builder 2780:As-if rule 2716:References 2547:2019-05-24 2518:2019-05-24 2489:2018-06-19 2460:2018-05-08 2435:2018-06-19 2405:2018-06-26 2376:2018-04-03 2347:2018-09-03 2322:2014-11-28 2278:2015-04-03 2253:2020-11-16 2228:2017-03-24 2197:2017-03-25 2166:2017-03-24 2135:2016-03-23 2104:2016-03-23 2079:2015-12-12 2054:2014-11-15 2029:2014-11-15 1998:2014-11-15 1968:2014-11-15 1943:2014-11-15 1912:2016-06-23 1865:2016-03-23 1840:2021-06-21 1815:2018-12-17 1790:2017-03-24 1759:2017-03-09 1728:2019-01-30 1697:2019-01-30 1672:2017-03-13 1647:2018-10-09 1622:2017-03-24 1591:2017-03-24 1580:. §9.4.1. 1560:2014-11-15 1535:2014-11-15 1510:2020-11-08 1484:2017-03-24 1453:2017-07-16 1427:2014-11-15 1402:2017-03-09 1371:2014-11-15 1346:2014-11-15 1312:2014-11-28 1287:2014-11-28 1257:2014-11-28 1232:2015-04-03 1207:2015-04-03 1176:2017-12-03 1097:2017-03-21 1073:References 883:algorithms 851:std::empty 600:statements 563:expression 464:namespaces 336:algorithms 46:improve it 4780:15926 WIP 4144:9592/9593 4069:9000/9001 3957:8805/8806 2983:C++/WinRT 2825:Compilers 2721:Templates 2711:Operators 2650:Libraries 2155:. §23.7. 1779:. §19.8. 1611:. §11.5. 982:std::bind 955:Trigraphs 911:std::byte 907:container 861:iterators 855:std::data 847:std::size 843:container 750:Value of 711:make_pair 557:constexpr 442:namespace 433:namespace 409:namespace 352:syntactic 350:and some 95:changelog 52:talk page 5405:Category 3130:List of 3077:Category 3052:Designer 3002:Dialects 2947:KDevelop 2942:NetBeans 2916:CodeLite 2671:Concepts 2659:Features 2541:Archived 2512:Archived 2508:llvm.org 2483:Archived 2454:Archived 2429:Archived 2399:Archived 2370:Archived 2341:Archived 2316:Archived 2295:Archived 2272:Archived 2247:Archived 2219:Archived 2188:Archived 2157:Archived 2126:Archived 2098:Archived 2073:Archived 2048:Archived 2020:Archived 1992:Archived 1962:Archived 1934:Archived 1906:Archived 1884:Archived 1859:Archived 1834:Archived 1809:Archived 1781:Archived 1750:Archived 1722:Archived 1691:Archived 1666:Archived 1641:Archived 1613:Archived 1582:Archived 1554:Archived 1529:Archived 1504:Archived 1475:Archived 1447:Archived 1421:Archived 1393:Archived 1365:Archived 1340:Archived 1306:Archived 1281:Archived 1251:Archived 1226:Archived 1198:Archived 1170:Archived 1144:Archived 1091:Archived 1051:See also 995:reserved 990:register 877:Parallel 845:access: 841:Uniform 830:std::map 800:std::any 524:literals 383:typename 377:optional 366:Language 82:require 5306:29199-2 5178:23094-2 5173:23094-1 5163:23090-3 5032:19794-5 5027:19775-1 4815:16612-2 4805:16355-1 4494:13406-2 4452:12234-2 4220:10118-3 2973:C++/CLI 2926:Eclipse 2921:Dev-C++ 2764:Strings 2666:Classes 2605:Outline 1717:YouTube 772:Library 759:201703L 527:Use of 513:, i.e. 314:History 84:cleanup 5320:30000+ 4159:9797-1 3967:8820-5 3912:8501-1 3468:1073-2 3463:1073-1 3147:1–9999 2978:C++/CX 2901:Anjuta 675:double 597:switch 509:" and 380:Allow 344:header 147:is in 5387:80000 5382:56000 5377:55000 5372:50001 5367:45001 5362:42010 5357:40500 5352:39075 5347:38500 5342:37001 5337:32000 5332:31000 5327:30170 5311:29500 5301:29148 5297:29110 5293:28000 5288:27729 5283:27006 5278:27005 5273:27002 5268:27001 5263:27000 5253:26324 5248:26300 5243:26262 5238:26000 5233:25964 5228:25178 5223:24728 5218:24707 5213:24617 5208:24613 5203:24517 5198:23941 5193:23360 5188:23271 5183:23270 5168:23092 5158:23009 5153:23008 5148:23003 5143:23000 5138:22537 5133:22395 5128:22301 5123:22300 5118:22275 5113:22000 5108:21827 5103:21500 5098:21122 5093:21047 5088:21001 5083:21000 5078:20830 5073:20802 5068:20400 5063:20121 5058:20022 5053:20000 5037:19831 5022:19770 5017:19757 5012:19752 5007:19600 5002:19510 4997:19509 4992:19508 4987:19507 4982:19506 4977:19505 4972:19503 4967:19502 4962:19501 4957:19500 4952:19439 4947:19407 4942:19136 4937:19125 4932:19115 4927:19114 4910:19092 4905:19011 4900:19005 4895:18916 4890:18629 4885:18245 4880:18181 4875:18014 4870:18004 4865:17799 4860:17506 4855:17442 4850:17369 4845:17203 4840:17100 4835:17025 4830:17024 4820:16750 4810:16485 4800:16262 4795:16023 4790:15938 4785:15930 4775:15926 4770:15924 4765:15919 4760:15897 4755:15707 4743:15706 4738:15693 4733:15686 4728:15511 4723:15504 4718:15438 4713:15445 4696:15444 4691:15408 4686:15398 4681:15291 4676:15288 4671:15189 4666:15022 4661:14971 4656:14882 4651:14764 4646:14698 4641:14651 4636:14649 4631:14644 4626:14617 4574:14496 4569:14443 4564:14396 4559:14289 4554:14224 4549:14031 4544:14000 4539:13818 4534:13816 4529:13616 4524:13584 4519:13568 4514:13567 4509:13490 4504:13485 4499:13450 4489:13399 4484:13250 4479:13216 4462:13211 4457:12620 4447:12207 4442:12182 4437:12052 4432:12006 4427:11992 4417:11941 4407:11940 4402:11898 4397:11889 4392:11801 4387:11785 4382:11784 4377:11783 4372:11544 4367:11404 4362:11179 4357:11172 4352:11170 4347:11073 4342:10967 4337:10962 4332:10957 4327:10861 4322:10746 4317:10664 4312:10646 4307:10628 4302:10589 4297:10585 4292:10383 4260:10303 4255:10279 4250:10218 4245:10206 4240:10179 4235:10165 4230:10161 4225:10160 4215:10116 4210:10007 4205:10006 2931:Geany 2906:CLion 2853:Clang 2773:Ideas 2645:C++26 2640:C++23 2635:C++20 2630:C++17 2625:C++14 2620:C++11 2615:C++03 2610:C++98 2222:(PDF) 2215:(PDF) 2191:(PDF) 2184:(PDF) 2160:(PDF) 2153:(PDF) 2129:(PDF) 2122:(PDF) 2023:(PDF) 2016:(PDF) 1937:(PDF) 1930:(PDF) 1784:(PDF) 1777:(PDF) 1753:(PDF) 1746:(PDF) 1616:(PDF) 1609:(PDF) 1585:(PDF) 1578:(PDF) 1478:(PDF) 1471:(PDF) 1396:(PDF) 1389:(PDF) 1201:(PDF) 1194:(PDF) 1122:(PDF) 1115:(PDF) 1014:Clang 723:false 696:false 654:false 515:ASCII 503:C++11 493:UTF-8 389:class 328:C++14 324:C++11 320:C++1z 308:C++20 304:C++14 288:C++17 249:C++26 244:C++23 239:C++20 234:C++17 229:C++14 224:C++11 219:C++03 214:C++98 153:prose 4285:-238 4189:9995 4184:9985 4179:9984 4174:9945 4169:9899 4164:9897 4154:9660 4149:9594 4139:9564 4134:9529 4129:9506 4124:9496 4119:9407 4114:9362 4109:9314 4104:9293 4099:9241 4094:9227 4089:9141 4084:9126 4079:9075 4074:9036 4064:8879 4017:-8-I 3972:8859 3962:8807 3952:8691 3947:8652 3942:8651 3937:8632 3932:8613 3927:8601 3922:8583 3917:8571 3907:8373 3902:8217 3897:8178 3892:8093 3887:8000 3882:7942 3877:7816 3872:7813 3867:7812 3862:7811 3857:7810 3852:7736 3847:7637 3835:7498 3830:7200 3825:7185 3820:7098 3815:7064 3810:7027 3805:7010 3800:7002 3795:7001 3790:6943 3785:6709 3780:6523 3775:6438 3770:6429 3765:6425 3760:6385 3755:6373 3750:6346 3745:6344 3740:6166 3735:5964 3730:5807 3725:5800 3720:5776 3715:5775 3710:5725 3705:5428 3700:5427 3695:5426 3690:5218 3685:4909 3680:4217 3675:4165 3670:4157 3665:4031 3660:3977 3655:3950 3650:3901 3645:3864 3640:3602 3635:3601 3630:3307 3625:3297 3603:3166 3598:3103 3593:3029 3588:2921 3583:2852 3578:2848 3573:2788 3568:2720 3563:2711 3558:2709 3553:2533 3548:2281 3543:2240 3538:2146 3533:2145 3528:2108 3523:2047 3518:2033 3513:2022 3508:2015 3503:2014 3498:1989 3493:1745 3488:1629 3483:1538 3478:1413 3473:1155 3458:1007 3453:1004 3448:1000 3271:68-1 2993:SYCL 2888:IDEs 1152:2017 1046:16.4 932:and 919:byte 915:char 903:, a 894:and 853:and 832:and 828:for 824:and 684:> 681:bool 672:< 669:pair 642:pair 594:and 574:auto 530:auto 484:and 466:and 399:auto 340:the 149:list 5426:C++ 4619:-20 4614:-17 4609:-14 4604:-12 4599:-11 4594:-10 4280:-28 4275:-22 4270:-21 4265:-11 4057:-16 4052:-15 4047:-14 4042:-13 4037:-12 4032:-11 4027:-10 3443:999 3438:965 3433:898 3428:860 3423:843 3418:838 3413:764 3408:732 3403:704 3398:690 3393:668 3388:657 3383:646 3351:639 3346:519 3341:518 3336:500 3331:361 3326:306 3321:302 3316:262 3311:261 3306:259 3301:233 3296:228 3291:226 3286:217 3281:216 3276:128 3264:-13 3259:-12 3254:-11 3249:-10 3118:ISO 2858:GCC 2759:STL 2600:C++ 2589:C++ 1008:GCC 881:STL 814:in 717:5.0 705:std 690:5.0 663:std 648:5.0 636:std 583:(); 338:in 300:C++ 296:IEC 292:ISO 5422:: 4920:-2 4915:-1 4748:-2 4706:-9 4701:-3 4589:-6 4584:-3 4579:-2 4472:-2 4467:-1 4411:-2 4022:-9 4012:-8 4007:-7 4002:-6 3997:-5 3992:-4 3987:-3 3982:-2 3977:-1 3840:-1 3618:-3 3613:-2 3608:-1 3376:-6 3371:-5 3366:-3 3361:-2 3356:-1 3244:-9 3239:-8 3234:-7 3229:-6 3224:-5 3219:-4 3214:-3 3209:-1 3204:-0 3199:31 3194:17 3189:16 3138:– 3134:– 2988:Ch 2535:. 2510:. 2506:. 2481:. 2477:. 2427:. 2423:. 2397:. 2393:. 2368:. 2364:. 2339:. 2314:. 2245:. 2186:. 2124:. 2096:. 2071:. 2046:. 2018:. 1990:. 1977:^ 1960:. 1932:. 1904:. 1900:. 1882:. 1857:. 1832:. 1807:. 1720:. 1714:. 1689:. 1664:. 1639:. 1552:. 1527:. 1502:. 1445:. 1419:. 1363:. 1338:. 1321:^ 1304:. 1279:. 1266:^ 1249:. 1224:. 1196:. 1168:. 1142:. 980:, 976:, 968:, 928:, 866:A 849:, 708::: 666::: 639::: 591:if 554:if 548:if 498:u8 478:, 415::: 310:. 55:. 4413:) 4409:( 3184:9 3179:7 3174:6 3169:4 3164:3 3159:2 3154:1 3110:e 3103:t 3096:v 2687:) 2683:( 2581:e 2574:t 2567:v 2550:. 2521:. 2492:. 2463:. 2438:. 2408:. 2379:. 2350:. 2325:. 2281:. 2256:. 2231:. 2200:. 2169:. 2138:. 2107:. 2082:. 2057:. 2032:. 2001:. 1971:. 1946:. 1915:. 1868:. 1843:. 1818:. 1793:. 1762:. 1731:. 1700:. 1675:. 1650:. 1625:. 1594:. 1563:. 1538:. 1513:. 1487:. 1456:. 1430:. 1405:. 1374:. 1349:. 1315:. 1290:. 1260:. 1235:. 1210:. 1179:. 1154:. 1100:. 863:" 729:. 726:) 720:, 714:( 699:) 693:, 687:( 678:, 657:) 651:, 645:( 615:T 609:T 577:= 566:) 560:( 517:) 495:( 487:] 481:] 475:] 457:} 454:} 451:… 448:{ 445:Y 439:{ 436:X 427:} 424:… 421:{ 418:Y 412:X 294:/ 276:e 269:t 262:v 192:) 186:( 174:) 170:( 156:. 123:) 117:( 112:) 108:( 97:. 62:) 58:( 23:.

Index

C17 (C standard revision)
improve it
talk page
Learn how and when to remove these messages
cleanup
quality standards
changelog
improve this article
Learn how and when to remove this message
list
prose
converting this article
Editing help
Learn how and when to remove this message
C++ language revisions
C++98
C++03
C++11
C++14
C++17
C++20
C++23
C++26
v
t
e
ISO
IEC
C++
C++14

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.