<2007-04-17>
1- 插件导出函数设计成C形式的也就是在函数前加 extern "C",这样保证动态连接的时候不会出现找不到名字的情况.
2- 一定要保证代码绝缘,中间接口一定要传递NATURAL类型或者纯虚指针,否则会因为一些细微的类版本不同而导致很多很多的运行错误和异常.
3- DLL中分配出来的内存,一定要在DLL内部释放,否则会导致意想不到的情况.
4- 如果不是万分必要不要使用DLL直接导出类,而应该导出纯虚接口.不然使用DEPENDENCE等工具会把你的类结构看的一清二楚.
5- 如非必要,请一定要使用动态连接,也就是LOADLIBRARY, GETPROCADDR的形式,这会增强你软件的友好性.
<2007-04-18 11:05 am>
6- 如果你要提供对象工厂,那么确保你的对象的纯虚接口要有 virtual ~InterfaceClassName(){} 这样的析构函数, 确保在你混乱不堪直接去删除一个接口指针的时候能正确的调用到接口实现的析构.
<未完待续>