C++ (/ /, pronounced "C plus plus") is a high-level, general-purpose programming language created by Danish computer scientist Bjarne Stroustrup. First released in 1985 as an extension of the C programming language, it has since expanded significantly over time; modern C++ currently has object-oriented, generic, and functional features, in addition to facilities for low-level memory manipulation. It is almost always implemented as a compiled language, and many vendors provide C++ compilers, including the Free Software Foundation, LLVM, Microsoft, Intel, Embarcadero, Oracle, and IBM.
|Paradigms||Multi-paradigm: procedural, imperative, functional, object-oriented, generic, modular|
|Designed by||Bjarne Stroustrup|
|Developer||ISO/IEC JTC 1 (Joint Technical Committee 1) / SC 22 (Subcommittee 22) / WG 21 (Working Group 21)|
C++20 (ISO/IEC 14882:2020) / 15 December 2020
C++23 / 18 December 2022
|Typing discipline||Static, strong, nominative, partially inferred|
|Filename extensions||.C, .cc, .cpp, .cxx, .c++, .h, .H, .hh, .hpp, .hxx, .h++|
|Ada, ALGOL 68,BCPL,C, CLU,F#,ML, Mesa,Modula-2,Simula, Smalltalk|
|Ada 95, C#,C99, Carbon, Chapel,Clojure,D, Java,JS++,Lua,Nim,Objective-C++, Perl, PHP, Python,Rust,Seed7|
C++ was designed with systems programming and embedded, resource-constrained software and large systems in mind, with performance, efficiency, and flexibility of use as its design highlights. C++ has also been found useful in many other contexts, with key strengths being software infrastructure and resource-constrained applications, including desktop applications, video games, servers (e.g. e-commerce, web search, or databases), and performance-critical applications (e.g. telephone switches or space probes).
C++ is standardized by the International Organization for Standardization (ISO), with the latest standard version ratified and published by ISO in December 2020 as ISO/IEC 14882:2020 (informally known as C++20). The C++ programming language was initially standardized in 1998 as ISO/IEC 14882:1998, which was then amended by the C++03, C++11, C++14, and C++17 standards. The current C++20 standard supersedes these with new features and an enlarged standard library. Before the initial standardization in 1998, C++ was developed by Stroustrup at Bell Labs since 1979 as an extension of the C language; he wanted an efficient and flexible language similar to C that also provided high-level features for program organization. Since 2012, C++ has been on a three-year release schedule with C++23 as the next planned standard.