C++

C++ programming languageC++ standardC++ languagecore languageC++ ProgrammingISO C++ standard C++ programming language.CPPCC ++
C++ ( "see plus plus") is a general-purpose programming language.wikipedia
3,686 Related Articles

Object-oriented programming

object-orientedobject orientedobject-oriented programming language
It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation.
C++, C#,

C++17

C++17, C++11
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).
, C++17 is the name for the most recent revision of the ISO/IEC 14882 standard for the C++ programming language.

C++11

constexprmove constructormove constructors
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.
C++11 is a version of the standard for the programming language C++.

Generic programming

genericgenericstemplates
It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation.
They are known as parametric polymorphism in ML, Scala, Haskell (the Haskell community also uses the term "generic" for a related but somewhat different concept) and Julia; templates in C++ and D; and parameterized types in the influential 1994 book Design Patterns.

C++14

2014 standardC++C++2014
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.
C++14 is a version of the ISO/IEC 14882 standard for the programming language C++.

General-purpose programming language

general-purposegeneral purpose programming languageGeneral
C++ ( "see plus plus") is a general-purpose programming language.
C++

Bjarne Stroustrup

Stroustrup Stroustrup, Bjarne
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.
Bjarne Stroustrup ( born 30 December 1950) is a Danish computer scientist, who is most notable for the creation and development of the C++ programming language.

Bell Labs

Bell Telephone LaboratoriesBell LaboratoriesAT&T Bell Laboratories
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.
Researchers working at Bell Labs are credited with the development of radio astronomy, the transistor, the laser, the charge-coupled device (CCD), information theory, the Unix operating system, and the programming languages C, C++, and S.

C++20

C++20 is the next planned standard thereafter, keeping with the current streak of a new version every three years.
C++20 is the informal name for the revision of the ISO/IEC standard for the C++ programming language expected to follow C++17.

C++03

ISO/IEC C++03
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.
C++03 is a version of an international standard for the programming language C++.

Const (computer programming)

const-correctnessconstconst correctness
New features in 2.0 included multiple inheritance, abstract classes, static member functions, const member functions, and protected members.
In the C, C++, D, and JavaScript programming languages, const is a type qualifier: a keyword applied to a data type that indicates that the data is read only.

Compiled language

compiledcompilationcompiled programming language
C++ is a compiled language, with implementations of it available on many platforms.
C++

ALGOL 68

AL-76/ALGOL 68ALGOL 68 boolean "or" operatorALGOL 68: Comparisons with other languages
As well as C and Simula's influences, other languages also influenced C++, including ALGOL 68, Ada, CLU and ML.
Steve Bourne, who was on the Algol 68 revision committee, took some of its ideas to his Bourne shell (and thereby, to descendant shells such as Bash) and to C (and thereby to descendants such as C++).

Cfront

Furthermore, it included the development of a standalone compiler for C++, Cfront.
Cfront was the original compiler for C++ (then known as "C with Classes") from around 1983, which converted C++ to C; developed by Bjarne Stroustrup.

C (programming language)

CC programming languageC language
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.
Many later languages have borrowed directly or indirectly from C, including C++, C#, Unix's C shell, D, Go, Java, JavaScript, Limbo, LPC, Objective-C, Perl, PHP, Python, Rust, Swift, Verilog and SystemVerilog (hardware description languages).

Embedded software

embeddedflight softwaresoftware
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.
Code is typically written in C or C++, but various high-level programming languages, such as Python and JavaScript, are now also in common use to target microcontrollers and embedded systems.

Operator overloading

overloadedoverloaded operatorsoverloading
In 1983, "C with Classes" was renamed to "C++" ( being the increment operator in C), adding new features that included virtual functions, function name and operator overloading, references, constants, type-safe free-store memory allocation (new/delete), improved type checking, and BCPL style single-line comments with two forward slashes.
In this case, the addition operator is overloaded to allow addition on a user-defined type "Time" (in C++):

Java (programming language)

JavaJava programming languageJava language
As of 2017, C++ remains the third most popular programming language, behind Java and C.
The language derives much of its original features from SmallTalk, with a syntax similar to C and C++, but it has fewer low-level facilities than either of them.

Simula

Simula 67Simula-67
Stroustrup found that Simula had features that were very helpful for large software development, but the language was too slow for practical use, while BCPL was fast but too low-level to be suitable for large software development.
The influence of Simula is often understated, and Simula-type objects are reimplemented in C++, Object Pascal, Java, C# and several other languages.

BCPL

Stroustrup found that Simula had features that were very helpful for large software development, but the language was too slow for practical use, while BCPL was fast but too low-level to be suitable for large software development.
The single-line comments of BCPL, which were not adopted by C, reappeared in C++ and later in C99.

C++ Standard Library

libstdc++standard libraryits standard library
The following is Bjarne Stroustrup's version of the Hello world program that uses the C++ Standard Library stream facility to write a message to standard output:
In the C++ programming language, the C++ Standard Library is a collection of classes and functions, which are written in the core language and part of the C++ ISO Standard itself.

Imperative programming

imperativeimperative programming languageimperative language
It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation.
Drawing from concepts in another object-oriented language—Simula (which is considered the world's first object-oriented programming language, developed in the 1960s)—Bjarne Stroustrup designed C++, an object-oriented language based on C.

Concepts (C++)

ConceptsC++ conceptsconcept
ISO/IEC TS 19217:2015 on the C++ concepts
Concepts are an extension to C++'s templates, published as an ISO Technical Specification ISO/IEC TS 19217:2015.

Template (C++)

templatetemplatesC++ templates
Later feature additions included templates, exceptions, namespaces, new casts, and a boolean type.
Templates are a feature of the C++ programming language that allows functions and classes to operate with generic types.

System programming

systems programmingsystems programmersystems
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.
More recently a subset of C++ called Embedded C++ has seen some use, for instance it is used in the I/O Kit drivers of macOS.