Программа курса:
1. Введение в стандарт ISO/IEC 14882:2011.
· Необходимость нововведений языка С++.
· Преемственность стандарта С++11 от библиотеки Boost.
2. Нововведения в ядре языка С++
· Новые типы. Расширение возможностей компилятора по определению типа.
· Range based for. Выражения, вычисляемые на этапе компиляции.
3. Расширение функциональности стандартной библиотеки
· Новые глобальные функции.
· Универсальная инициализация.
· Конструирование «по месту».
4. Лямбда выражения
· Локальные функции.
· Удобство для программиста.
5. Нововведения в классах
· Инициализация переменных класса.
· Автоматическая генерация компилятором методов класса.
· Изменения в инициализации производных классов.
6. rvalue reference и семантика перемещения
· Понятие rvalue reference. Перемещающие операции.
· Семантика перемещения при наследовании. Семантика перемещения при внедрении.
7. Семантика продвижения (forward)
· Использование T&& в шаблонах.
· Шаблон std::forward.
8. Регулярные выражения.
· Назначение регулярных выражений. Синтаксис регулярных выражений.
· Средства стандартной библиотеки для использования регулярных выражений.
9. Смарт-указатели. Идиома RAII.
· Идиома RAII.
· Класс std::unique_ptr.
· Класс std::shared_ptr.
· Класс std::weak_ptr.
10. Шаблоны с переменным числом параметров.
· Понятие variadic template.
· Реализация variadic template функции.
· Реализация variadic template класса.
11. Шаблоны std::tuple, std::function, std::mem_fn, std::bind.
· Шаблон std::tuple.
· Шаблон std::function.
· Шаблон std::mem_fn.
· Шаблон std::bind.
1. Введение в стандарт ISO/IEC 14882:2011.
· Необходимость нововведений языка С++.
· Преемственность стандарта С++11 от библиотеки Boost.
2. Нововведения в ядре языка С++
· Новые типы. Расширение возможностей компилятора по определению типа.
· Range based for. Выражения, вычисляемые на этапе компиляции.
3. Расширение функциональности стандартной библиотеки
· Новые глобальные функции.
· Универсальная инициализация.
· Конструирование «по месту».
4. Лямбда выражения
· Локальные функции.
· Удобство для программиста.
5. Нововведения в классах
· Инициализация переменных класса.
· Автоматическая генерация компилятором методов класса.
· Изменения в инициализации производных классов.
6. rvalue reference и семантика перемещения
· Понятие rvalue reference. Перемещающие операции.
· Семантика перемещения при наследовании. Семантика перемещения при внедрении.
7. Семантика продвижения (forward)
· Использование T&& в шаблонах.
· Шаблон std::forward.
8. Регулярные выражения.
· Назначение регулярных выражений. Синтаксис регулярных выражений.
· Средства стандартной библиотеки для использования регулярных выражений.
9. Смарт-указатели. Идиома RAII.
· Идиома RAII.
· Класс std::unique_ptr.
· Класс std::shared_ptr.
· Класс std::weak_ptr.
10. Шаблоны с переменным числом параметров.
· Понятие variadic template.
· Реализация variadic template функции.
· Реализация variadic template класса.
11. Шаблоны std::tuple, std::function, std::mem_fn, std::bind.
· Шаблон std::tuple.
· Шаблон std::function.
· Шаблон std::mem_fn.
· Шаблон std::bind.