![]() |
|
Paradigm | Multi-paradigm: procedural, functional, object-oriented, generic |
---|---|
Designed by | Bjarne Stroustrup |
First appeared | 1985 |
Stable release |
ISO/IEC 14882:2017 / 1 December 2017
|
Typing discipline | Static, nominative, partially inferred |
Implementation language | C++ or C |
Filename extensions | .cc .cpp .cxx .C .c++ .h .hh .hpp .hxx .h++ |
Website | isocpp |
Major implementations | |
LLVM Clang, GCC, Microsoft Visual C++, Embarcadero C++Builder, Intel C++ Compiler, IBM XL C++, EDG | |
Influenced by | |
Ada, ALGOL 68, C, CLU, ML, Simula | |
Influenced | |
Ada 95, C#,C99, Chapel,D, Java,Lua, Perl, PHP, Python,Rust, Nim[citation needed] | |
|
C++ (pronounced /ˌsiːˌplʌsˈplʌs/ "see plus plus") is a general-purpose programming language. It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation.
It was designed with a bias toward system programming and embedded, resource-constrained and large systems, 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, servers (e.g. e-commerce, web search or SQL servers), and performance-critical applications (e.g. telephone switches or space probes). C++ is a compiled language, with implementations of it available on many platforms. Many vendors provide C++ compilers, including the Free Software Foundation, Microsoft, Intel, and IBM.
C++ is standardized by the International Organization for Standardization (ISO), with the latest standard version ratified and published by ISO in December 2017 as ISO/IEC 14882:2017 (informally known as C++17). The C++ programming language was initially standardized in 1998 as ISO/IEC 14882:1998, which was then amended by the C++03, C++11 and C++14 standards. The current C++17 standard supersedes these with new features and an enlarged standard library. Before the initial standardization in 1998, C++ was developed by Bjarne Stroustrup at Bell Labs since 1979, as an extension of the C language as he wanted an efficient and flexible language similar to C, which also provided high-level features for program organization. C++20 is the next planned standard thereafter.
Many other programming languages have been influenced by C++, including C#, D, Java, and newer versions of C.