You are on page 1of 3

History of C++

The C++ programming language.

1979 - C with Classes (C++) first achieved/completed.

1982 - C with Classes reference manual published.

1984 - C84 implemented, reference manual published

1985 - Cfront 1.0

 New features: virtual functions, function and operator overloading, references, new and delete
operators, the keyword const, scope resolution operator
 Library additions: complex, string, iostream

1985 - The C++ Programming Language, 1st edition

1986 - The "whatis?" paper documenting the remaining design goals, including multiple inheritance,
exception handling, and templates.

1987 - C++ support in GCC 1.15.3

1989 - Cfront 2.0

 New features: multiple inheritance, pointers to members, protected access, type-safe linkage,
abstract classes, static and const member functions, class-specific new and delete
 Library additions: I/O manipulators

1990 - The Annotated C++ Reference Manual

 This book described the language as designed, including some features that were not yet
implemented. It served as the de-facto standard until the ISO.
 New features: namespaces, exception handling, nested classes, templates

1991 - Cfront 3.0

1991 - The C++ Programming Language, 2nd edition

Standard C++

1990 - ANSI C++ Committee founded

1991 - ISO C++ Committee founded

1992 - STL implemented in C++

1998 - C++98
 New features: RTTI (dynamic_cast, typeid), covariant return types, cast operators, mutable, bool,
declarations in conditions, template instantiations, member templates, export
 Library additions: containers, algorithms, iterators, function objects (based on STL), locales,
bitset, valarray, auto_ptr, templatized string, iostream, and complex.

1998 - The C++ Programming Language, 3rd edition

1999 - Boost founded by the committee members to produce new high-quality candidate libraries for the
standard.

2003 - C++03

 This was a minor revision, intended to be little more than a technical corrigendum
 New features: value initialization

2007 - Library extension TR1

2010 - Mathematical special functions

2011 - C++11

 A large number of changes were introduced to both standardize existing practices and improve
the abstractions available to the C++ programmers

2011 - Decimal floating-point TR

 This TR implements the decimal floating-point types from IEEE 754-2008 Standard for Floating-
Point Arithmetic: std::decimal::decimal32, std::decimal::decimal64, and
std::decimal::decimal128.

2012 - The Standard C++ Foundation founded

2013 - The C++ Programming Language, 4th edition

2014 - C++14

 Minor revision of the C++ standard

2015 - Filesystem library TS

 This TS is an experimental C++ library extension that specifies a filesystem library based on
boost.filesystem V3 (with some modifications and extensions). This TS was merged into C++17.

2015 - Extensions for Parallelism TS

2015 - Extensions for Transactional Memory TS


2015 - Extensions for Library Fundamentals TS

 This TS adds several new components to the C++ standard library: optional, any, string_view,
sample, search, apply, polymorphic allocators, and variable templates for type traits. This TS was
merged into C++17.

2015 - Extensions for Concepts TS

2016 - Extensions for Concurrency TS

 This TS extends the C++ library to include several extensions to std::future, latches and barriers,
and atomic smart pointers.

2017 - C++17

2017 - Extensions for Ranges TS

 This TS extends the C++ library to include ranges, a new, more powerful, abstraction to replace
iterator pairs, along with range views, sentinel ranges, projections for on-the-fly transformations,
new iterator adaptors and algorithms. This extension finally makes it possible to sort a vector
with sort(v);

2017 - Extensions for Coroutines TS

 This TS extends the C++ core language and the standard library to include stackless coroutines
(resumable functions). This adds the keywords co_await, co_yield, and co_return.

2018 - Extensions for Networking TS (ISO/IEC TS 19216:2018) (ISO Store) (2017 draft)

 This TS extends the C++ library to include TCP/IP networking based on boost.asio.

2018 - Extensions for modules TS (ISO/IEC TS 21544:2018) (ISO Store) (2018 draft)

Future development

Experimental technical specifications

2020 - C++20 ((2018-07-07 draft))

The next major revision of the C++ standard

You might also like