An Overview of the C++ Programming Language
Source: www.research.att.com
Topic: C Programming
Short Desciption:The C++ programming language provides a model of memory and computation that ... §3 The C Programming Model presents the C subset of C++ and other C++ ...
Content Inside: From The Handbook of Object Technology (Editor: Saba Zamir). CRC Press LLC, Boca Raton. 1999. ISBN 0-8493-3135-8. An Overview of the C++ Programming Language Bjarne Stroustrup AT&T Laboratories Florham Park, NJ07932-0971, USA ABSTRACT This overview of C++ presents the key design, programming, and language-technical con- cepts using examples to give the reader a feel for the language. C++ is a general-purpose programming language with a bias towards systems programming that supports efficient low-level computation, data abstraction, object-oriented programming, and generic pro- gramming. 1 Introduction and Overview The C++ programming language provides a model of memory and computation that closely matches that of most computers. In addition, it provides powerful and flexible mechanisms for abstraction; that is, lan- guage constructs that allow the programmer to introduce and use new types of objects that match the con- cepts of an application. Thus, C++ supports styles of programming that rely on fairly direct manipulation of hardware resources to deliver a high degree of efficiency plus higher-level styles of programming that rely on user-defined types to provide a model of data and computation that is closer to a human’s view of the task being performed by a computer. These higher-level styles of programming are often called data abstraction, object-oriented programming, and generic programming. This paper is organized around the main programming styles directly supported by C++: §2 The Design and Evolution of C++ describes the aims of C++ and the principles that guided its evolu- tion. §3 The C Programming Model presents the C subset of C++ and other C++ facilities supporting tradi- tional systems-programming styles. §4 The C++ Abstraction Mechanisms introduces C++’s class concept and its use for defining new types that can be used exactly as built-in types, shows how abstract classes can be used to provide inter- faces to objects of ...

