Contents
1 Overview of the chapters 122 Introduction 13
2.0.1 History of the C++ Annotations
. . . . . . . . . . . . . . . . . . . . . . . .
142.1 What’s new in the C++ Annotations
. . . . . . . . . . . . . . . . . . . . . . . . . .
142.2 The history of C++
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
162.2.1 Compiling a C program by a C++ compiler
. . . . . . . . . . . . . . . . . .
162.2.2 Compiling a C++ program
. . . . . . . . . . . . . . . . . . . . . . . . . . .
172.3 Advantages and pretensions of C++
. . . . . . . . . . . . . . . . . . . . . . . . . .
182.4 What is Object-Oriented Programming?
. . . . . . . . . . . . . . . . . . . . . . . .
192.5 Differences between C and C++
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
212.5.1 End-of-line comment
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
212.5.2 NULL-pointers vs. 0-pointers
. . . . . . . . . . . . . . . . . . . . . . . . . .
222.5.3 Strict type checking
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
222.5.4 A new syntax for casts
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
222.5.5 The ’static cast’-operator
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
232.5.6 The ’const cast’-operator
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
232.5.7 The ’reinterpret cast’-operator
. . . . . . . . . . . . . . . . . . . . . . . . .
242.5.8 The void argument list
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
242.5.9 The #define cplusplus
. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
242.5.10 The usage of standard C functions
. . . . . . . . . . . . . . . . . . . . . . .
252.5.11 Header files for both C and C++
. . . . . . . . . . . . . . . . . . . . . . . .
252.5.12 The definition of local variables
. . . . . . . . . . . . . . . . . . . . . . . . .
272.5.13 Function Overloading
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
271