C++
(→ISO standard: updated latest working draft link) |
(→ISO standard: fixed draft versions, added reference) |
||
Line 15: | Line 15: | ||
The final standards are only released for a purchase fee, however the working drafts are available for free.<ref>https://isocpp.org/std/the-standard</ref> | The final standards are only released for a purchase fee, however the working drafts are available for free.<ref>https://isocpp.org/std/the-standard</ref> | ||
{| class="wikitable" | {| class="wikitable" | ||
− | ! Date !! Common name !! Standard name !! Last working draft | + | ! Date !! Common name !! Standard name !! Last working draft<ref>http://en.cppreference.com/w/Cppreference:FAQ#Which_revision_of_the_C.2B.2B_Standard_does_this_reference_adhere_to.3F</ref> |
|- | |- | ||
− | | unfinished || C++17 || ISO/IEC WD 14882 || [http://open-std.org/ | + | | unfinished || C++17 || ISO/IEC WD 14882 || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4640.pdf n4640.pdf] |
|- | |- | ||
− | | 2014 || C++14 || ISO/IEC 14882:2014 || [ | + | | 2014 || C++14 || ISO/IEC 14882:2014 || [https://github.com/cplusplus/draft/blob/master/papers/n4140.pdf?raw=true n4140.pdf] |
|- | |- | ||
− | | 2011 || C++11 || ISO/IEC 14882:2011 || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/ | + | | 2011 || C++11 || ISO/IEC 14882:2011 || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3337.pdf n3337.pdf] |
|- | |- | ||
| 2003 || C++03 || ISO/IEC 14882:2003 || | | 2003 || C++03 || ISO/IEC 14882:2003 || |
Revision as of 08:26, 4 March 2017
C++ began as a pre-processor for C, and eventually evolved into a programming language in its own right, adding object-oriented classes to a basic syntax still derived from C. It has achieved a great deal of popularity, and has been standardized as ISO/IEC 14882.
The name refers to the "increment" operator ++ applied to C, and is not the grade the language's creator received for it as a student project!
C# and Objective-C are other descendants of C which take different approaches to adding object-oriented classes.
Contents |
Specifications
ISO standard
The final standards are only released for a purchase fee, however the working drafts are available for free.[1]
Date | Common name | Standard name | Last working draft[2] |
---|---|---|---|
unfinished | C++17 | ISO/IEC WD 14882 | n4640.pdf |
2014 | C++14 | ISO/IEC 14882:2014 | n4140.pdf |
2011 | C++11 | ISO/IEC 14882:2011 | n3337.pdf |
2003 | C++03 | ISO/IEC 14882:2003 | |
1998 | C++98 | ISO/IEC 14882:1998 |
The C++ Programming Language
Written by the language creator Bjarne Stroustrup, the book served as the original C++ reference before being standardized.
Date | Edition | ISBN |
---|---|---|
2013 | 4th edition | ISBN 0-321-56384-0 |
2000 | Special edition | ISBN 0-201-70073-5 |
1997 | 3rd edition | ISBN 0-201-88954-4 |
1991 | 2nd edition | ISBN 0-201-53992-6 |
1986 | 1st edition | ISBN 0-201-12078-X |
Compiler extensions
Compilers commonly include non-standard extensions that might be used.
- Clang
- GCC: C++, C
- Visual C++
See also
Links
- Wikipedia article
- The Grand C++ Error Explosion Competition
- GCC-XML: convert C++ code to XML
- A Modest Proposal: C++ Resyntaxed (archive.org copy)
- Thinking in C++ 2nd Edition by Bruce Eckel (free online book)