Overview of the C++ Language

C++ is an object-oriented language based on the C programming language. It can be viewed as a superset of C. Almost all of the features and constructs available in C are also available in C++. However, C++ is more than just an extension of C. Its additional features support the programming style known as object-oriented programming. Several features that are already available in C, such as input and output may be implemented differently in C++. In C++ you may use the conventional C input and output routines or you may use object oriented input and output by using the I/O Stream class library.

C++ was developed by Bjarne Stroustrup of AT&T Bell Laboratories. It was originally based on the definition of the C language stated in The C Programming Language by Brian W. Kernighan and Dennis M. Ritchie. This C language definition is commonly called K&R C. Since then, the International Standards Organization C language definition (referred to here as ISO/ANSI C ) has been approved. It specifies many of the features that K&R left unspecified. Some features of ISO/ANSI C have been incorporated into the current definition of C++, and some parts of the ISO/ANSI C definition have been motivated by C++.

While there is currently no C++ standard comparable to the ISO/ANSI C definition, an ISO committee is working on such a definition. The draft of the Working Paper for Draft Proposed American National Standard for Information Systems - Programming Language C+ +, X3J16/92-0091, is the base document for the ongoing standardization of C++. The IBM C and C++ Compilers adheres to the version of the ISO/ANSI working paper dated September 17, 1992.



Overview of the C Language
Constructs Treated Differently in C and C++
C and C++ Compatibility
Resolving Ambiguous Statements in C++


Simple C++ Input and Output
Passing Arguments in C++
C++ Enhancements to C Functions