Создание нового объекта из динамической информации о типе
В C ++ есть ли способ запросить тип объекта и затем использовать эту информацию для динамического создания нового объекта того же типа?
Например, скажем, у меня есть простая иерархия 3 классов:
class Base
class Foo : public Base
class Bar : public Base
Теперь предположим, что я даю вам объект, приведенный к типу Base - который в действительности имеет тип Foo. Есть ли способ запросить тип и использовать эту информацию для последующего создания новых объектов типа Foo?