0
可能重复:
Is there a way to instantiate objects from a string holding their class name?在运行时指定对象类型
我写了一个VBO模板类在OpenGL顶点缓冲区对象的工作。我正在为C++编写多个平台。
我想在运行时从配置文件中设置类型。
例如
<vbo type="bump_vt" ... />
Vbo* pVbo = new Vbo<bump_vt>(...);
有没有什么办法可以做到这一点,没有一个大的if else块,例如,
Vbo* pVbo;
if(sType.compareTo("bump_vt") == 0)
pVbo = new Vbo<bump_vt>(...);
else if
...
感谢
查看工厂设计模式 – Flexo