Лекция 23. Шаблоны (часть 3) презентация
Содержание
- 2. Темы Частичная специализация Неполная специализация Шаблонные члены класса Шаблоны как параметры
- 3. Частичная специализация Нам уже знакома полная специализация: template <typename T> class
- 4. Частичная специализация (2) А для чего еще можно выполнять частичную специализацию?
- 5. Неполная специализация Неполная специализация позволяет нам указать часть параметров шаблона. template
- 6. Шаблонные члены класса Иногда имеет смысл делать шаблонными не весь класс,
- 7. Шаблонные члены класса (2) Вынесем стратегию управления памятью в отдельный класс:
- 8. Шаблонные члены класса (3) Теперь наш класс Array будет иметь следующий
- 9. Шаблоны как параметры шаблона Аргументами шаблона могут быть не только простые
- 10. Функциональные объекты Рассмотрим функцию find1, которая ищет указанное число в массиве
- 11. Функциональные объекты (2) Обобщим нашу функцию find, добавив возможность поиска элемента
- 12. Функциональные объекты (3) В итоге для реализации обобщенного поведения некоторой функции
- 13. Функциональные объекты (4) Тип с определенным оператором вызова функции называется функциональным
- 14. Функциональные объекты (5) После замены указателей на функциональные объекты и приведения
- 15. Функциональные объекты (6) Теперь мы можем использовать find3 следующим образом: Определим
- 16. Traits Предположим, нам надо написать набор математических функций, работающих с разными
- 17. Traits (2) Все эти величины для стандартных типов определены в файле
- 18. Traits (3) Определим обобщенный trait для всех типов: template <typename T>
- 19. Traits (4) Функция IsZero: template <typename T> bool IsZero(T val) {
- 20. Спасибо за внимание Вопросы?
- 21. Скачать презентацию
Слайды и текст этой презентации