ООП в C++
Часть про ООП в C++ (кажется, это нужно преподавать второкурсникам):
- Модификаторы доступа
- Понятие vtable и зачем она нужна (полиморфизм, виртуальные методы)
- Линейный поиск по реализованной vtable против подстройки указателя
- Интерфейсы (абстрактные классы без полей) для полиморфизма
- Одиночное наследование полей (без подстройки указателя)
- Виртуальное наследование (с подстройкой указателя)
- Бесполезное ромбовидное наследование и как его решают на низком уровне (см. ссылку в resources), синтаксис
static_cast,dynamic_cast,reinterpret_cast