History of C++

C++ is a general-purpose, object-oriented programming language.

C, C++, Java, and C# are related. C++ evolved from C. Java was modeled after C++. C# is a subset of C++, with some features similar to Java. If you know one of these languages, it is easy to learn the others.

C evolved from the B language, which evolved from the BCPL (Basic Combined Program­ming Language). Martin Richards developed BCPL in the mid-1960s for writing operating systems and compilers. Ken Thompson incorporated many features from BCPL in his B lan­guage and used it to create early versions of the UNIX operating system at Bell Laboratories in 1970 on a DEC PDP-7 computer. Both BCPL and B are typeless—that is, every data item occupies a fixed-length “word” or “cell” in memory. How a data item is treated—for example, as a number or as a string—is the responsibility of the programmer. Dennis Ritchie extended the B language by adding types and other features in 1971 to develop the UNIX operating system on a DEC PDP-11 computer. Today, C is portable and hardware independent. It is widely used for developing operating systems.

C++ is an extension of C, developed by Bjarne Stroustrup at Bell Laboratories during 1983-1985. C++ added a number of features that improved the C language. Most important, it added the support of using classes for object-oriented programming. Object-oriented pro­gramming can make programs easy to reuse and easy to maintain. C++ could be considered a superset of C. The features of C are supported by C++. C programs can be compiled using C++ compilers. After learning C++, you will be able to read and understand C programs as well.

An international standard for C++, known as C++98, was created by the International Standard Organization (ISO) in 1998. The ISO standard is an attempt to ensure that C++ is portable—that is, your programs compiled using one vendor’s compiler can be compiled without errors from any other vendor’s compiler on any platform. Since the standard has been around for a while, all the major vendors now support the ISO standard. Nevertheless, the C++ compiler vendors may add proprietary features into the compiler. So, it is possible that your program may compile fine by one compiler but may need to be modified in order to be compiled by a different compiler.

A new standard, known as C++11, was approved by ISO in 2011. C++11 added new fea­tures into the core language and standard library. These new features are very useful for advanced C++ programming. We will introduce some of the new features in the bonus chap­ters and in the supplements on the Companion Website.

C++ is a general-purpose programming language, which means you can use C++ to write code for any programming task. C++ is an object-oriented programming (OOP) language. Object-oriented programming is a powerful tool for developing reusable software. Object- oriented programming in C++ will be covered in detail starting in Chapter 9.

Source: Liang Y. Daniel (2013), Introduction to programming with C++, Pearson; 3rd edition.

Leave a Reply

Your email address will not be published. Required fields are marked *