C++ Introduction and History

In The Beginning

Reading: Ch. 1-4, plus pp. 71 and 72.

The C language was created at ATT Bell Labs during the 1970's by Ken Thompson and Dennis Ritchie.

The C language is small, and it produces efficient object programs. This makes it well-suited for for small and slow computers.

C is widely used for system software, both operating systems and networking servers. It is also still important on the desktop, though it is just one of many there.

The New Class

In 1979, Bjarne Stroustrup at Bell Labs was studying the problem of partitioning the Unix kernel code in order to build a distributed system. Having previous experience with the class construct, he developed a tool to add classes to C to express the modular structure of the code he was studying. This effort eventually grew into a new programming language.

California Does Its Own Thing

Java was created in the 1990s, originally for use in embedded systems. James Gosling is usually given as the primary designer, though others were were involved.

Speaking Generically

The idea of generic programming is to build a data structure without knowing all of the types, so that the code can then be reused with any or many data types. Many languages support generic programming in some form, including Java generics and C++ templates.

And Now

The C++ standard continues to be updated. The latest full standard was issued in 2011, amended in 2014. It includes such improvements as:


C++ is a text-oriented language. It has no standard Graphical User Interface library. A C program types to the console and reads data from the keyboard. No on had heard of a GUI. The user of a minicomputer typed text commands on a console or terminal device, and read responses typed by the computer.

C++ is still a text-based language. The original C had a very good I/O system for printing and other features for using this environment well. It is very good at flinging text around. C++ is even better.