|
Week #1 |
| 01/01/01 |
No course |
| 01/03/01 |
Memory, CPU, files |
PS |
PDF |
| 01/05/01 |
Linux shell, basic C++ statements (variable declarations) |
PS |
PDF |
|
Homework, due 01/12/01 (UNIX commands and basic loops) |
PS |
PDF |
| |
|
Week #2 |
| 01/08/01 |
Expressions, functions (1) |
PS |
PDF |
| 01/10/01 |
Functions (2), arrays, pointers, pointers to arrays |
PS |
PDF |
| 01/12/01 |
Dynamic memory allocation, misc. about non-OO syntax |
PS |
PDF |
|
Homework, due 01/19/01 (functions, polynomial evaluation, matrix product) |
PS |
PDF |
|
Functions to create and delete matrices |
iomatrix.cc |
| |
|
Week #3 |
| 01/15/01 |
Notion of algorithm costs, big-O notation, sort algorithms (1) |
PS |
PDF |
| 01/17/01 |
Sort algorithms (2), introduction of the class keyword |
PS |
PDF |
| 01/19/01 |
Member functions, constructors, destructors |
PS |
PDF |
|
Homework, due 01/26/01 (big-O, quick-sort, Mandelbrot set) |
PS |
PDF |
| |
|
Week #4 |
| 01/22/01 |
Details about classes, copy constructor, = operator, a matrix class |
PS |
PDF |
|
A matrix class |
matrix.cc |
| 01/24/01 |
Details about member operators, implicit conversions, a linked list class |
PS |
PDF |
|
A linked list class |
linkedlist.cc |
| 01/26/01 |
Usage of member functions, overloading the stream operators, first steps in inheritance |
PS |
PDF |
|
Homework, due 02/02/01 (polynomial class) |
PS |
PDF |
| |
|
Week #5 |
| 01/29/01 |
Inheritance, details about constructor/destructor calls and memory organization |
PS |
PDF |
| 01/31/01 |
"Find the bugs" and "what is printed" exercices (1) |
PS |
PDF |
|
The quick-sort source code |
qsort.cc |
|
The mandelbrot tracer source code |
mandel.cc |
| 02/02/01 |
"Find the bugs" and "what is printed" exercices (2) |
PS |
PDF |
|
Homework, due 02/09/01 (drawing complex mesh) |
PS |
PDF |
|
A complex-number class |
complex.cc |
| |
|
Week #6 |
| 02/05/01 |
No course |
| 02/07/01 |
Midterm exam preparation |
PS |
PDF |
| 02/09/01 |
Midterm exam |
PS |
PDF |
| |
|
Week #7 |
| 02/12/01 |
Virtual functions, pure virtual functions, example of graphical layout |
PS |
PDF |
|
Some graphical layout using virtual functions |
glayout.cc |
| 02/14/01 |
Box and arrows exercices, usage of virtual classes for mathematical functions |
PS |
PDF |
|
Mathematical functions defined with virtual classes |
functions.cc |
| 02/16/01 |
"What does it do" exercices with virtual classes, references to virtual classes |
PS |
PDF |
|
Homework, due 02/26/01 (z-buffer) |
PS |
PDF |
|
Some formulas to help for the z-buffer homework |
PS |
PDF |
| |
|
Week #8 |
| 02/19/01 |
Notion of abstract iterator (1), smart copies with reference-counting |
PS |
PDF |
| 02/21/01 |
Formal derivation of mappings, dynamic cast, summary about classes |
PS |
PDF |
| 02/23/01 |
string class, abstract iterator (2), exercices about iterators and mapings |
PS |
PDF |
|
Iterators |
iterators.cc |
| |
|
Week #9 |
| 02/26/01 |
Homework, due 03/05/01 (ray-tracing) |
PS |
PDF |
| 02/28/01 |
Templates |
PS |
PDF |
| 03/02/01 |
Tree structures, implementation, and a bit of design pattern |
PS |
PDF |
|
The tree class and template stack class |
trees.cc |
| |
|
Week #10 |
| 03/05/01 |
Final exam preparation : question session |
| 03/07/01 |
Summary of everything, exercice : write a picture class |
PS |
PDF |
| 03/09/01 |
Final exam (with solutions) |
PS |
PDF |