目前有个项目要在delphi里调用一系列的Webservice(也是delphi写的),正常我们是这样写的:mHttpRio := THTTPRIO.Create(nil);
mHttpRio.URL := 'XXXXXXXXXXXXXXX';
Result := (mHttpRio as ITest).Test;想到delphi有泛型,于是设计了一个函数:
GetRemoteService<T>: T;
begin
   mHttpRio := THTTPRIO.Create(nil);
   mHttpRio.URL := 'XXXXXXXXXXXXXXX';
   //问题来了,接下里我怎么把 mHttpRio 转换成 T类型后返回??
end;实际调用时我只需要;
var
  mService: ITest;
begin
  mService := GetRemoteService<ITest>;
  Result := mService.Test;
end;备注:我设计这个函数的目的:1、若干Webservice的接口类型不一样;
                                                         2、每个Webservice的url也是不一样的,但可以透过接口类型去获取