在 Java 中,我可以使用“类”方法“newInstance”来实例化一个对象,这对我的特定系统来说确实很有帮助。我现在正试图在 C++ 中实现类似的东西。
对我来说,如何实现这一点并不明显,但经过一些思考......(你明白了吗......嗯?)我认为通过创建一个具有保存属性的 ClassDescription 类可能是可能的 ' sizeof' 类实例和一个方法 newInstance,该方法分配此内存量并将其作为 void * 返回。然后调用代码将需要适当地转换它。
C++ 语言是否适当地定义了这是否有效?
顺便说一句..我认识到我可以为作为备份计划的类创建一个包含工厂的注册表。对于这个问题的答案,我会重视关注我所讨论的内容是否有效的具体问题。
此致
*附加上下文* 此要求的原因是允许通用库实例化库用户知道但不知道库本身的类。该库将有一些元数据用于实现此目的,因此可以告知类的大小。从用户的角度来看,不必将工厂对象添加到元数据中会更“整洁”。