假设我们只有一个字符串
string typename = "int"
我们如何通过此类型名称获取实例。
答案 0 :(得分:4)
在C ++中,不能只有string
(或字符数组)的类型。类型必须在编译时声明。
[P.S。 typename
是C ++中的关键字,因此不能用作变量。]
答案 1 :(得分:2)
C ++不直接支持。您可以使用Abstract Factory Pattern
(请参阅Wikipedia article)并将类的名称映射到工厂以创建它。
答案 2 :(得分:1)
您不能直接在C ++中执行此操作。
通常的方法是在一些工厂中注册所有可能的类型,这些类型将在堆上创建数据。