The father of C++ is Bjarne Stroustrup, who is also the author of the book The C++ Programming Language. He designed and implemented this programming language to address the problem of distributing UNIX kernel services across multiprocessors and local area network clusters. When he was working on event-driven simulation back then, he found the Simula language well-suited for the task yet lacking satisfactory performance. On the other hand, the C language delivered high efficiency but suffered from poor modularization and weak type checking capabilities. Thus, he came up with the idea of adding Simula’s class mechanism to C, which gave birth to “C with Classes”, the predecessor of C++.
Later, this language was adopted in numerous large-scale projects, proving its advantages of low resource consumption and high performance. However, it still lacked a great many core features at that time, including operator overloading, references, virtual functions, templates, exceptions and more.
Initially, the language was only used internally. In July 1983, C++ stepped out of the lab for the first time and was adopted by external organizations.
The ++ symbol is the increment operator in C, signifying that C++ is an evolved and upgraded version of the C language.
C++11 was codenamed C++0x during its development phase, and this tutorial is based on C++11.
The core original intention behind developing C++ was to spare his colleagues from writing assembly language, pure C code, or various popular high-level languages of that era. It aimed to lower the barrier to developing high-quality programs and improve the coding experience.
The evolution of the C++ language advanced in parallel with the development of its core standard library components.
C++ Timeline
1979: Development initiated under the original name “C with Classes”; implemented classes, constructors/destructors, and a basic concurrency library.
1984: Officially renamed C++; added virtual functions, overloading, references, and the I/O stream library.
1985: First commercial release of C++ launched.
1998: The first international standard C++98 was finalized.
2002: Development of a new standard began with the codename C++0x.
2003: Released the errata version of C++98; added library components such as regular expressions, hash containers, and smart pointers.
2009: Feature set of C++0x finalized, incorporating modern features including lambdas, move semantics, multithreading, uniform initialization and more.
2011: The new standard was officially named C++11 and formally approved by ISO.
2012: Compilers with full C++11 support were released; development of C++14 and C++17 commenced.
The Father of C++
The father of C++ is Bjarne Stroustrup. Born in 1955, he retired from his full-time position at Morgan Stanley in 2022 but continues to engage in C++ related work.
