C++, 3DGame
最近有看到一些文章讨论怎样轻松的使用DLL,其中有一个错误,那就是在DLL中创建的对象未在DLL中删除,如下示:
posted on 2007-04-20 13:35 Kooyu 阅读(1529) 评论(6) 编辑 收藏 引用
恩,没有试过,但是怎么才是使DLL和用户都动态链接C/C++运行库那,哈哈!来电详细的解释o! 谢谢! 欢迎加入:msn 的C++群: group2041@xiaoi.com 回复 更多评论
就是正在创建的DLL和使用这个DLL的用户都静态而不是动态链接c/c++运行库 回复 更多评论
老兄,我用的不是auto_ptr,而是shared_ptr, 我的做法并没有错。另外,在复杂的系统中,手工管理内存总是有点危险,而shared_ptr已被列为tr1标准,我们不要停留在原始社会,还是用点新技术吧! 回复 更多评论
@eXile 我虚心接受你的批评。 回复 更多评论
呵呵,DLL中使用shared_ptr的说明:http://www.cppblog.com/eXile/archive/2007/04/23/22637.html 回复 更多评论
同意作者的观点。提供一个DllFree(); 然后自己写一个 dll_auto_ptr:struct dll_auto_ptr{ ... ~dll_auto_ptr<> { DllFree(p); } ...private:}; 回复 更多评论
Powered by: C++博客 Copyright © Kooyu