3.00版有大量的内存泄漏 这个应该和作者本人的代码习惯有关
比如:
void ResourceSkin::deserialization(xml::ElementPtr _node, Version _version)
作者new出 IObject* object = FactoryManager::getInstance().createObject("BasisSkin/State", basisSkinType);
以后就再也不管了 导致大概600个内存泄漏
还有就是 在GenericFactory 里面
class GenericFactory
{
public:
typedef delegates::CDelegate1<IObject*&> Delegate;
static typename Delegate::IDelegate* getFactory()
{
return newDelegate(createFromFactory);
}
}
这里new出的对象也没有进行管理和删除 导致大约37个泄漏
查看作者的修改bug的记录 很多也是在修复memory leak = =# 估计他以前是写c#的吧