Lecture | Section | Topics |
---|---|---|
Week 1 Wednesday | Basic C++ | Basic C++ syntax, basic input/output |
Week 1 Friday | Basic C++ | Numerical types, strings, vectors, pass-by-reference |
Week 2 Monday | Assignment 1 | |
Week 2 Wednesday | Basic C++ | Pointers, arrays, C-style strings, arguments to main(), memory allocation |
Week 2 Friday | Basic C++ | Code style |
Week 3 Monday | Object-oriented C++ | Classes, constructors, destructors, assignment operator, const correctness, file layout, include guards |
Week 3 Wednesday | Object-oriented C++ | Operator overloading, inheritance, namespaces |
Week 3 Friday | Unix development tools | Simple shell, make, grep, gdb, testing |
Week 4 Monday | Unix development tools | Revision control, more advanced shell programming, shell utilities |
Week 4 Wednesday | Advanced C++ | Generic code, templates |
Week 4 Friday | Advanced C++ | Associative Containers, Exceptions |
Week 5 Wednesday | Advanced C++ | Exception Safety, auto_ptr |
Week 5 Friday | Assignment 3 | |
Week 6 Monday | Advanced C++ / C++ STL | String streams, Iterators, Containers |
Week 6 Wednesday | C++ STL | Specific STL containers, function objects |
Week 6 Friday | C++ STL | STL algorithms |
Week 7 Monday | C++ STL | STL mutating algorithms |
Week 7 Wednesday | Revision |