C++ is an "object oriented" programming language created by Bjarne Stroustrup and released in 1985.
It implements "data abstraction" using a concept called "classes", along with other features to allow object-oriented programming. Parts of the C++ program are easily reusable and extensible;
existing code is easily modifiable without actually having to change the code. C++ adds a concept called "operator overloading" not seen in the earlier OOP languages and it makes the creation of libraries much cleaner.
C++ maintains aspects of the C programming language, yet has features which simplify memory management.
Additionally, some of the features of C++ allow low-level access to memory but also contain high level features.
C++ is one of the most popular programming languages and is implemented on a wide variety of hardware and operating system platforms.
As an efficient compiler to native code, its application domains include systems software, application software, device drivers, embedded software, high-performance server and client applications, and entertainment software such as video games.
Several groups provide both free and proprietary C++ compiler software, including the GNU Project, Microsoft, Intel and Embarcadero Technologies.
C++ has greatly influenced many other popular programming languages, most notably C# and Java. Other successful languages such as Objective-C use a very different syntax and approach to adding classes to C.
C++ is also used for hardware design, where the design is initially described in C++,
then analyzed, architecturally constrained, and scheduled to create a register-transfer level hardware description language via high-level synthesis.