- C: Language basics.
- C: Functions.
- C: Basics of OS interfaces used in the C/system library.
- C: Memory management.
- C: Data structures.
- C: Examples of various libraries.
- C++: Language basics, OO, classes.
- C++: Runtime polymorphism, data structures with runtime polymorphism.
- C++: Templates.
- C++: STL.
(1,2 and 3 overlap, everything else is in a sequence).
LAB: Pointers should probably be in their own section, perhaps between 2 and 3, as 3 requires them. Then again, perhaps they go with 1, if 1 includes arrays.
anyone programming in C++ nowadays should be familiar with the Generic Programming Paradigm http://www.generic-programming.org/about/intro/