Ковариантный тип возврата

Использование ковариантного возвращаемого типа для виртуальной функции и для всех её переопределённых версий означает, что вы можете заменить исходный возвращаемый тип на более узкий, другими словами, на более специализированный.

Предположим, у вас есть CarFactoryLine, производящая автомобили (Cars). Специализация этих производственных линий может производить внедорожники (SUVs), спортивные автомобили (SportsCars) и т.д. Как это представить в коде? Очевидный способ - всё ещё иметь возвращаемый тип в виде указателя на Car.

#код #программирование #программист #it

Ковариантный тип возврата | Сетка — социальная сеть от hh.ru