C++ is an object-oriented programming language and is considered to be an extension of C.
C++ was developed by Bjarne Stroustrup at AT&T Bell Laboratories in Murray Hill, New Jersey, USA, in the early 1980's.
Bjarne Stroustrup, an admirer of Simula67 and a strong supporter of C, wanted to combine the best of both the languages and create a more powerful language that could support object-oriented programming features.
Since the class was a major addition to the original C language. Stroustrup initially called the new language 'C with classes'. However, later in 1983, the name was changed to C++.
The idea of C++ comes from the C increament operator ++, thereby suggesting that C++ is an augmented (incremented) version of C.
The object-oriented features in C++ allow programmers to build large programs with clarity, extensibility and ease of maintenance, incorporating the spirit and efficiency of C.
The addition of new features has transformed C from a language that currently facilitates top-down, structured design, to one that provides bottom-up, object-oriented design.
Pure object-oriented models are never found efficient, but the C++ model is a balanced model chosen to cater to efficiency as the prime requirement. The other languages like Java, which are nearer o object-oriented than C++, but are less efficient than C++. Hence, C++ does not represent the pure object-oriented model.
A valid C program obviously without any OO feature is usually a void C++ program as well.
C++ is a versatile language for handling very large programs. It is suitable for virtually any programming task including development of compilers, editors, databases, communication system and any complex real-life application systems. The following is the list of few examples of where C++ programming is used.