解决上面问题的最好办法是在DLL的设计中使用工厂模式来管理其中维护的多个对象,这样做不仅可以维护不同的对象,还可以维护一个类的多个实例。然后我们只用在那个唯一的导出函数中导出这个工厂对象的接口,其它的对象接口都可以通过这个接口获得。比如象下面的样子:
※使用工厂模式:
function TFooManager.CreateAFoo: IFoo;
begin
inc(FooNum);
if length(FList)
setlength(FList,FooNum*2);
FList[FooNum-1]:=TFoo.Create;
…
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)