TC-4 Goals
Things to learn during this stage that you should remember:
- Function template and member function templates
Functions template are quite convenient to factor code that looks alike but differs by the nature of its arguments. Member function templates are used to factor error handling within the
TypeChecker
.- Virtual member function templates
You are expected to understand why there can be no such thing in C++.
- The Template Method design pattern
The Template Method allows to factor a generic algorithm, the steps of which are specific. This is what we use to type check function and type declarations. Do not confuse Template Method with member function template, the order matters. Remember that in English the noun is usually last, preceded by qualifier.
- Type-checking
What it is, how to implement it.
- Stack unwinding
What it means, and when the C++ standard requires it from the compiler.