The Advanced C++ Book

Front Cover
Silicon Press, 1992 - Computers - 288 pages
 

Contents

C+ + Overview
xiii
2 OBJECTORIENTED PROGRAMMING FACILITIES
xiv
3 FOCUS ON DATA
xv
A FIRST LOOK
xvi
6 TWO MOTIVATING EXAMPLES
9
7 EXERCISES
22
The C+ + Class and Other C+ + Basics
23
2 CONSTANT OBJECTS
24
3 INITIALIZATION OF BASE CLASSES
126
4 ASSIGNMENT CONSTRUCTORS FOR DERIVED CLASSES
127
5 VIRTUAL FUNCTIONS
129
6 ABSTRACT CLASSES
132
7 VIRTUAL BASE CLASSES
133
8 AMBIGUITY ITS RESOLUTION
135
10 EXAMPLES
136
11 EXERCISES
140

3 CLASSES
26
4 CLASS MEMBERS
29
AN EXAMPLE
44
6 COPYING CLASS OBJECTS
44
7 STREAM INPUTOUTPUT
48
8 CALLING C FUNCTIONS
48
10 EXAMPLES
48
11 EXERCISES
55
Advanced C+ + Facilities
57
1 FRIENDS
60
2 CONSTANT OBJECTS AND CONSTANT MEMBER FUNCTIONS
67
3 REFERENCES
68
4 TYPE CONVERSIONS
72
5 INLINE FUNCTIONS
78
6 OVERLOADING
82
7 FORWARD INCOMPLETE CLASS DECLARATIONS
93
8 NONGLOBAL CLASSES
94
9 STATIC MEMBERS STATIC CLASSES
95
10 POINTERS TO CLASS MEMBERS
100
11 EXERCISES
102
Examples
103
2 SETS
104
3 CROSS REFERENCE GENERATOR
109
4 ITERATORS
115
5 EXERCISES
118
Inheritance
121
1 DERIVED CLASSES
123
2 MULTIPLE INHERITANCE
125
Templates
143
1 TEMPLATE DECLARATIONS DEFINITIONS
144
2 MORE ABOUT TEMPLATES
147
3 EXAMPLES
148
4 EXERCISES
151
The MAKE Program A Large Example
153
1 OVERVIEW OF THE MK IMPLEMENTATION
157
2 EXERCISES
169
Streams and Other Libraries
171
2 STREAM INPUTOUTPUT
172
4 EXERCISES
214
C+ + Program Development Guidelines
215
2 PREVENTING MULTIPLE CLASS DEFINITIONS
216
3 FUNCTION PROTOTYPES
217
4 PASSING ARGUMENTS BY REFERENCE
218
9 INHERITANCE
219
Conclusion
221
1 EXCEPTION HANDLING
222
2 C+ + AND SOFTWARE ENGINEERING
229
3 EXERCISES
233
C Subset of C+ +
235
2 OBJECTS TYPES
237
3 OPERATORS EXPRESSIONS
239
4 STATEMENTS
241
Bibliography
243
Index
245
Copyright

Other editions - View all

Common terms and phrases

Popular passages

Page 3 - Users of class objects can manipulate them (ie, manipulate the data encapsulated by the objects) using only the items ("data members" and "function members") specified in the "public" part of the class specification. Data abstraction ensures that programmers use and manipulate objects without knowing about or directly accessing their internal representations.
Page xiv - that interact with each other. Programs are written, as far as possible, using concepts that are natural to the application domain. Object-oriented software design enhances program readability and, at the same time, it speeds up the program development process and makes it easier to maintain programs.
Page xiv - Object-Oriented Programming: This approach is similar to the programming paradigm based on abstract data types except that inheritance can be used to define related types. Inheritance supports code reuse by factoring out the common components of related types. C++ is a
Page 2 - Object-Oriented Programming: This approach is similar to the programming paradigm based on abstract data types except that inheritance can be used to define related types. Inheritance supports code reuse by factoring out the common components of related types.
Page ix - In addition to the facilities provided by C, C++ provides a variety of new facilities such as those for • data abstraction, • multiple inheritance, • strong type checking, • passing arguments by reference, • guaranteed initialization, • automatic cleanup, • operator and function overloading,
Page 1 - Modular Programming: The program is designed as a collection of modules. Each module hides its data from the other modules and provides a set of interface functions which must be used to access the data.
Page 3 - This can lead to errors and it makes the resulting code become dependent upon the specifics of the data structure implementation. Using data abstraction facilities, data structures are defined as "classes

References to this book

Bibliographic information