Программирование на C++, часть 2
Санкт-Петербург, весна 2018
Описание
Этот курс – продолжение курса Программирование на C++, часть 1
. Весенний семестр будет состоять из трёх частей:
Продвинутые возможности C++: множественное наследование, преобразования в стиле C++, RTTI, пространства имён и пр.
Стандарты C++11 и С++14.
Стандартная библиотека шаблонов.
Обработка ошибок.
Многопоточность и метапрограммирование.
В среднем лекция занимает два часа, т.е. заканчивается к 20:30, но могут быть незначительные отклонения в обе стороны.
Оценка выставляется по результатам домашних заданий, всего будет три домашних задания за семестр. Для получения оценки нужно пройти вторую часть онлайн-курса и сдать не менее двух домашних задания. Для получения оценки 4
достаточно сдать два домашних задания, для получения оценки 5
— нужно сдать все три домашних задания.
Преподаватели
Список лекций
Представление в памяти. Вызов конструкторов. Разрешение имён, перегрузка виртуальных функций. Несколько таблиц вирт. функций. Преобразование указателей. Виртуальное наследование.
Преобразования в стиле C++: static_cast, const_cast, reinterpret_cast, dynamic_cast. Преимущества над преобразованиями в стиле C. В каких случаях преобразование в стиле C приводит к ошибкам (множественное наследование).
О стандартизации C++. Различные нововведения: вывод типов, шаблоны с переменным числом аргументов, лямбда выражения и пр.
Подробный разбор семантики перемещения и других новых возможностей стандартов C++11 и C++14.