|
|
|
|
|
15
Classes and Data Abstraction |
|
|
|
| |
 |
|
|
|
|
Abstract Data Types |
|
|
|
| |
 |
|
|
|
|
Theoretical Foundations: Categories of Abstract Data Type Operations |
|
|
|
| |
 |
|
|
|
|
C++ Classes |
|
|
|
| |
 |
|
|
|
|
Matters of Style: Declaring Public and Private Class Members |
|
|
|
| |
 |
|
|
|
|
Classes, Class Objects, and Class Members |
|
|
|
| |
 |
|
|
|
|
Built-In Operations on Classes |
|
|
|
| |
 |
|
|
|
|
Class Scope |
|
|
|
| |
 |
|
|
|
|
Information Hiding |
|
|
|
| |
 |
|
|
|
|
Specification and Implementation Files |
|
|
|
| |
 |
|
|
|
|
The Specification File |
|
|
|
| |
 |
|
|
|
|
The Implementation File |
|
|
|
| |
 |
|
|
|
|
Compiling and Linking a Multifile Program |
|
|
|
| |
 |
|
|
|
|
Matters of Style: Avoiding Multiple Inclusion of Header Files |
|
|
|
| |
 |
|
|
|
|
Guaranteed Initialization with Class Constructors |
|
|
|
| |
 |
|
|
|
|
Invoking a Constructor |
|
|
|
| |
 |
|
|
|
|
Revised Specification and Implementation Files for TimeType |
|
|
|
| |
 |
|
|
|
|
Guidelines for Using Class Constructors |
|
|
|
| |
 |
|
|
|
|
Problem-Solving Case Study: Manipulating Dates |
|
|
|
| |
 |
|
|
|
|
Problem-Solving Case Study: Birthday Calls |
|
|
|
| |
 |
|
|
|
|
Testing and Debugging |
|
|
|
| |
 |
|
|
|
|
Testing and Debugging Hints |
|
|
|
| |
 |
|
|
|
|
Summary |
|
|
|
| |
 |
|
|
|
|
Quick Check |
|
|
|
| |
 |
|
|
|
|
Exam Preparation Exercises |
|
|
|
| |
 |
|
|
|
|
Programming Warm-Up Exercises |
|
|
|
| |
 |
|
|
|
|
Programming Problems |
|
|
|
| |
 |
|
|
|
|
Case Study Follow-Up |
|
|
|
| |
|
|
|
|
|
16
Object-Oriented Software Development |
|
|
|
| |
 |
|
|
|
|
Object-Oriented Programming |
|
|
|
| |
 |
|
|
|
|
Objects |
|
|
|
| |