Я работаю над реализацией механизма отражения на С++. Все объекты в моем коде являются подклассом Object (мой собственный универсальный тип), который содержит статический элемент данных типа Class.
class Class{
public:
Class(const std::string &n, Object *(*c)());
protected:
std::string name; // Name for subclass
Object *(*create)(); // Pointer to creation function for subclass
};
Для любого подкласса объекта со статическим элементом данных класса я хочу иметь возможность инициализировать «создать» указателем на конструктор этого подкласса.