🗊 Презентация Программирование. Variadic Templates. LSP

Нажмите для полного просмотра!
Программирование. Variadic Templates. LSP, слайд №1 Программирование. Variadic Templates. LSP, слайд №2 Программирование. Variadic Templates. LSP, слайд №3 Программирование. Variadic Templates. LSP, слайд №4 Программирование. Variadic Templates. LSP, слайд №5 Программирование. Variadic Templates. LSP, слайд №6 Программирование. Variadic Templates. LSP, слайд №7 Программирование. Variadic Templates. LSP, слайд №8 Программирование. Variadic Templates. LSP, слайд №9 Программирование. Variadic Templates. LSP, слайд №10 Программирование. Variadic Templates. LSP, слайд №11 Программирование. Variadic Templates. LSP, слайд №12 Программирование. Variadic Templates. LSP, слайд №13 Программирование. Variadic Templates. LSP, слайд №14 Программирование. Variadic Templates. LSP, слайд №15 Программирование. Variadic Templates. LSP, слайд №16

Вы можете ознакомиться и скачать презентацию на тему Программирование. Variadic Templates. LSP. Доклад-сообщение содержит 16 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1


Осенний семестр 2018 Преподаватель: асс. каф. Чуканов В.С
Описание слайда:
Осенний семестр 2018 Преподаватель: асс. каф. Чуканов В.С

Слайд 2


Содержание Variadic templates Perfect Forwarding LSP
Описание слайда:
Содержание Variadic templates Perfect Forwarding LSP

Слайд 3


Variadic Templates Объявление переменного числа типов template Объявление набора параметров типов, заданных Args double f(Args... args) Распаковка...
Описание слайда:
Variadic Templates Объявление переменного числа типов template Объявление набора параметров типов, заданных Args double f(Args... args) Распаковка кортежа параметров g(args...);

Слайд 4


Распаковка кортежа
Описание слайда:
Распаковка кортежа

Слайд 5


Распаковка кортежа (2)
Описание слайда:
Распаковка кортежа (2)

Слайд 6


Распаковка кортежа (3)
Описание слайда:
Распаковка кортежа (3)

Слайд 7


Использование лямбда Список захвата лямбда-функции может принимать кортеж типов
Описание слайда:
Использование лямбда Список захвата лямбда-функции может принимать кортеж типов

Слайд 8


Пример: Сумма
Описание слайда:
Пример: Сумма

Слайд 9


Пример №2
Описание слайда:
Пример №2

Слайд 10


Принцип LSP Принцип подстановки Барбары Лисков Liskov substitution principle, 1987 Если то Всякий объект базового класса должен быть заменяем...
Описание слайда:
Принцип LSP Принцип подстановки Барбары Лисков Liskov substitution principle, 1987 Если то Всякий объект базового класса должен быть заменяем наследником с сохранением корректности семантики оперирующего кода

Слайд 11


LSP: Пример Геометрические фигуры: прямоугольник, квадрат Квадрат – более «специализированное» определение прямоугольника Методы Set/GetWidth,...
Описание слайда:
LSP: Пример Геометрические фигуры: прямоугольник, квадрат Квадрат – более «специализированное» определение прямоугольника Методы Set/GetWidth, Set/GetHeight, GetArea() Квадрат –> w == h ?

Слайд 12


LSP: Реализация Rectangle (1)
Описание слайда:
LSP: Реализация Rectangle (1)

Слайд 13


LSP: Реализация Rectangle (2)
Описание слайда:
LSP: Реализация Rectangle (2)

Слайд 14


LSP: Реализация Quad
Описание слайда:
LSP: Реализация Quad

Слайд 15


Нарушение LSP Ошибки проектирования иерархии При реализации Quad потребовалось сделать изменения в базовом Rectangle (+ virtual) Семантика методов...
Описание слайда:
Нарушение LSP Ошибки проектирования иерархии При реализации Quad потребовалось сделать изменения в базовом Rectangle (+ virtual) Семантика методов базового класса поменялась Ранее разделенные методы стали зависимы Quad не является Rectangle в данном контексте

Слайд 16


Заключение Variadic templates Мощный инструмент создания прототипов для кортежей типов LSP Подстановка наследника вместо базового не должна менять...
Описание слайда:
Заключение Variadic templates Мощный инструмент создания прототипов для кортежей типов LSP Подстановка наследника вместо базового не должна менять семантику оперирующего кода



Похожие презентации
Mypresentation.ru
Загрузить презентацию