The syllabus is broken up into five three-week sections.
- Introduction
- Exceptions, and Iterators
- Algorithms, Maps, and Generic Functions
- Classes, Dynamic Memory, and Abstract Data Types
- Class values, Inheritance, and Memory Management
I will try hard not to
change the syllabus during the semester, but I make no promises.
Note: the phrase "X through Y" means "from the start of
X upto and including the end of Y".
- Section 1 - Introduction, 4 September to 23 September.
- Readings
-
Chapters 0 through 2.
- Class notes
-
How to pass this course.
Include files.
The string data type.
Stream I-O.
Invariants.
STL introduction.
STL vectors.
- One-minute reviews
-
9-11 September
- Programming Assignment
-
Assignment 1 available (last modified on 21 November 2003) on 4 September, due on 25 September at 2:00 p.m..
- Test
- 25 September
-
The answers.
The grades.
- Section 2 - Exceptions, and Iterators, 25 September to 14 October.
- Readings
-
Chapters 3 through 5.
- Class notes
-
Exceptions.
Exception examples.
An introduction to iterators.
Iterator invalidation.
STL lists.
- One-minute reviews
-
30 September-2 October
7-9 October
- Programming Assignment
-
Assignment 1 due on 25 September.
The grades.
Assignment 2 available (last modified on 13 October 2003) on 25 September, due on 16 October at 2:00 p.m..
- Test
- 16 October .
-
The answers.
The grades
- Section 3 - Algorithms, Maps, and Generic Functions, 16 October to 28 October.
- Readings
-
Chapters 6 throuth 8
- Class notes
-
Generic algorithms.
More on iterators.
STL maps.
Asymptotic estimates.
- One-minute reviews
-
14-16 October
21-23 October
- Programming Assignment
-
Assignment 2 due on 16 October .
The grades.
Assignment 3 available (last modified on 21 October 2003) on Sunday, 19 October,
due on 9 November at 2:00 p.m..
- Test
- 30 October.
-
The answers.
The grades.
- Section 4 - Classes, Dynamic Memory, and Abstract Data Types, 30 October to 18 November.
- Drop Day
- 5 November
-
- Readings
-
Chapters 9 through 11.
- Class notes
-
Function pointers.
Function objects.
Dynamic memory and classes.
Classes and conversions.
A cautionary tale.
- One-minute reviews
-
4-6 November
11-13
November
- Programming Assignment
-
Assignment 3 due on 30 October.
The grades.
Assignment 4 available (last modified on 25 November 2003) on 30 October, due on 20 November at 2:00 p.m..
- Test
- 20 November.
-
The answers.
The grades.
- Section 5 - Class values, Inheritance, and Memory Management, 20 November to 9 December.
- Readings
-
Chapters 12 through 14
- Class notes
-
Template classes.
String splitting.
Template functions.
Polymorphism and inheritance.
Implementing subtype polymorphism.
Classes and pointers.
Handling missing functions.
- Programming Assignment
-
Assignment 4 due on 20 November.
The grades.
An example solution.
Assignment 5 available (last modified on 11 December 2003) on 20 November, due on 11 December at 2:00 p.m..
The grades.
- One-minute reviews
-
25-27
November
2-04
December
- Test
- 11 December.
-
The answers.
The grades
- Open Lecture on allocators at 5:30 to 7:30
p.m. on Tuesday, 16 December, in HH 512.
This page last modified on 29 December 2003.