Войти через соцсеть:
Войти через email:
Цель этого доклада — познакомить слушателей с базовой реализацией type erasure в C++ и её подноготной.
Используя реализацию обёртки с _семантикой значения_ для полиморфных типов в качестве примера, мы посмотрим на то, как работает type erasure аналогичный `std::any`.
В отличие от повсеместно используемой семантики указателей и ссылок, в данном случае обёртка с семантикой значения позволит нам использовать полиморфные объекты со "стёртым" типом (type erased) как обычные значения: перемещать их туда-сюда, копировать, присваивать новые значения, со всей головной болью владения и клонирования спрятанной в реализации "за кулисами".
Сама _идея_ обёртки с семантикой значения была подробно рассказана в докладе Jonathan Boccara [здесь]().