想了一下,出于相关代码都应该尽量放在一起的原则。还是决定把代码中的类型在RTTI用字符串来表示。我只有在初始化游戏的时候才会用到一下,所以使用字符串并不会影响运行时的效率。
在使用XML创建CL_Sprite的时候,如果没有主窗口,那么程序就会出错。
因为在CL_Sprite创建过程中的源代码里,有个地方需要主窗口的大小。
因为我想在参数对象里存有类,而删除类的话必定要用到虚拟析构函数。
所以就把构造参数由void *更改为stGAME_PARAM
假如没有使用C++自带的RTTI就用dynamic_cast进行动态转换,就算转换本身是可以的,但一样有时会出错。
我想在没有使用多继承的情况下reinterpret_cast或用C格式进行转换,应该没有问题吧?毕竟内存地址都是一样的。