OO/C++ Fundamentals
1. Table of Contents
0
Cover Page
12.3
moretasks.h
1
Table of Contents
12.4
demo.cpp
2
Revision History
12.5
output.txt
3
Administration Details
13
Slicing
3.1
Instructor and contacts
13.1
Slicing
3.2
Schedule
13.2
slice.h
3.3
Preparation
13.3
demo.cpp
4
Course Outline
13.4
output.txt
5
Glossary of Basic Terms
14
Inheritance Issues
6
Bibliography
14.1
Objective
7
The Unified Modelling Language (UML) Notation
14.2
Inheritance and the is-a relation
7.1
Introduction and References
14.3
Principle of substitution
7.2
Class Diagrams
14.4
Polymorphism and Virtual Functions
8
Basic OO notions
14.5
Foundation Classes
8.1
Reuse
14.6
Behaviour Restriction
8.2
Object-Oriented Analysis / Object-Oriented Design
14.7
Things to think about
8.3
The general OOAD process
15
Templates
9
Storage and Memory Management
15.1
A template for SmartPtr
9.1
Classes of Object Storage
15.2
Template Substitution
9.2
The Static Area
15.3
smartptr.h
9.3
The Stack
15.4
demo.cpp
9.4
The Heap
15.5
output.txt
9.5
Calling Functions
16
Container Classes and Iterators
10
Lifecycle of a simple bare object
16.1
Containers
10.1
The Basic Class
16.2
Box of pointers to tasks
10.2
Key Points
16.3
box.h
10.3
Organization of an Object
16.4
demo.cpp
10.4
Value Semantics
16.5
output.txt
10.5
Visibility
16.6
Box of smart pointers to tasks
10.6
Persistence and Display Representation
16.7
demo.cpp
10.7
Basic Object Check List
16.8
output.txt
10.8
Things to Think About
16.9
A box of strings
10.9
simplebase.h
16.10
smartarray.h
10.10
simplebase.cpp
16.11
demo.p
10.11
demo.cpp
16.12
output.txt
10.12
output.txt
17
Class Evaluation
11
Scoped Task Objects and Smart Pointers
17.1
Quality of Classes
11.1
Scoped task object
18
Design Patterns
11.2
Smart Pointers
18.1
Design Patterns
11.3
task.h
18.2
The Gang of Four Pattern Catalog
11.4
smarttask.h
18.3
The Composite Pattern
11.5
demo.cpp
18.4
The Observer Pattern
11.6
output.txt
19
Defensive Coding
12
Simple Inheritance
19.1
Code Issues
12.1
Inheritance Concepts
19.2
The Trouble Stack
12.2
Inheritance as Reuse
20
End of Document
1. Table of Contents
OO/C++/Fund/1998.2.07