C++(3 семестр)
Версия от 22:24, 8 января 2014; Kamigan4eg (обсуждение | вклад)
Эта статья находится в разработке!
Содержание
- 1 1 часть
- 1.1 Наследование.
- 1.2 Виртуальные функции, абстрактные функции.
- 1.3 Таблица виртуальных функций.
- 1.4 Виртуальный деструктор.
- 1.5 Множественное наследование.
- 1.6 Модификаторы доступа для наследования.
- 1.7 Виртуальное наследование.
- 1.8 Порядок инициализации при создании объекта.
- 1.9 Pure virtual function call, __declspec(novtable).
- 1.10 Ковариантность типа возвращаемого значения.
- 1.11 Приведение типов: static_cast, dynamic_cast, const_cast, reinterpret_cast;
- 1.12 RunTime Type Information.
- 1.13 Templates: функции и классы.
- 1.14 Полная (explicit) и частичная (partial) специализация.
- 1.15 Compile-time объекты.
- 1.16 Разница между специализацией и перегрузкой функции.
- 1.17 Template arguments deduction, partial ordering для специализаций.
- 1.18 Правила инстанциирования.
- 1.19 Двухфазный lookup имен: по не зависящим от параметров (independent) и зависимым (dependent) именам.
- 1.20 Ключевое слово typename при обращении к dependent именам.
- 1.21 Отложенный парсинг шаблонных функций компилятором Microsoft (Сорокин обещал давать на экзамене задание на эту тему).
- 1.22 Два подхода к инстанциированию: Cfront – инстанциирование по ошибкам линковки (перелинковка, export template), Borland – инстанциирование везде, но с пометкой inline. Явное инстанциирование, подавление истанциирования.
- 1.23 SFINAE (substitution failure is not an error).
- 1.24 Overload resolution, conversion sequence.
- 1.25 Tag dispatching.
- 1.26 Namespace.
- 1.27 Global namespace.
- 1.28 Директива using namespace.
- 1.29 Порядок поиска в пространствах имен.
- 1.30 Using декларация.
- 1.31 Анонимный namespace.
- 1.32 Argument-dependent lookup (Koenig lookup).
- 1.33 STL. Контейнеры, итераторы, алгоритмы.
- 1.34 Контейнеры: sequence, associative.
- 1.35 Итераторы: input, output, forward, bidirectional, random access.
- 1.36 Reverse итераторы.
- 1.37 Range.
- 1.38 Концепторы, функторы.