самого типа, и создание этого типа по имени. Фактически, получается, что нужно хранить в каком-либо контейнере регистрируемые типы. Но, возможно ли это сделать? Псевдокод того, что хочется получить:
https://gcc.godbolt.org/z/UY3FHz
В чистых плюсах такое невозможно Нет типа "тип"
Вообще, в С++ есть typeid оператор, который возвращает std::type_info (вроде) Но это просто объект класса, который описывает тип, но пользоваться им как типом нельзя
предлагаю в мапе хранить не TYPE, а указатели на функции, или лямбды, которые возвращают BaseType*, а на самом деле делают new для нужного типа
Обсуждают сегодня