C++
For this course only the syllabus is available.
Syllabus
- Programming language basics: syntax vs semantics; interpreters/compilers; scope, visibility, block structure; lifetime and allocation.
- Preprocessing; constants and fundamental types; expressions and operator evaluation; memory-management concepts.
- Functions: overloading, parameter passing, default arguments; references and their use.
- Object-oriented programming in C++: classes, member functions, constructors/destructors; static members; namespaces and access control.
- Special member functions (copy constructor, assignment, operator overloading) and the rule-of-three/five (conceptual).
- Inheritance (including multiple inheritance), name hiding; virtual functions and dynamic dispatch; abstract classes and interfaces.
- Exception handling; runtime type information and modern casts.
- Templates: function and class templates; basics of generic programming and metaprogramming ideas.
- Standard Template Library (STL): containers, iterators, algorithms (practical overview).