【发布时间】:2013-11-04 17:56:50
【问题描述】:
我有一个必须返回通用接口的方法。曾尝试在delphi中制作该方法。但是不确定应该如何写?有谁能帮助我吗? 这是我用 Java 制作的一个例子:
public < T extends StandardDataProvider<?>> T GetDataProvider(String dataProviderName) {
if (dataproviders == null)
buildDataProviderMap();
if (dataproviders.containsKey(dataProviderName)) {
return (T) dataproviders.get(dataProviderName);
} else
return null;
}
然后尝试在delphi中做同样的事情..但不能让它工作?
function TLocalDataProviderFactory. GetDataProvider(DataProviderName: string): IStandardDataProvider; // Shows errors here?
begin
if not Assigned(DataProvider) then
BuildDataProviderMap;
if DataProvider.ContainsKey(DataProviderName) then
begin
Result := DataProvider.Items[DataProviderName];
end
else
begin
Result:= nil;
end;
end;
【问题讨论】:
-
您遇到什么错误?
-
E2003 未声明的标识符:'T'
-
IStandardDataProvider 是其他接口的基础接口。 IStandardDataProvider
= 接口,子是 IEventDataProvider = interface (IStandardDataProvider )
标签: java delphi delphi-xe4