Function 函数结果是泛型的
我需要这样的东西:Function 函数结果是泛型的,function,delphi,generics,Function,Delphi,Generics,我需要这样的东西: function fn_get_all_propperties (obj : TObject) : TObjectList<TTypeKind>; function fn_get_all_properties(obj: TObject): TList<TTypeKind>; 函数fn_get_all_properties(obj:TObject):TObjectList; 但是: [DCC错误]uFuncMain.pas(20):E2511类
function fn_get_all_propperties (obj : TObject) : TObjectList<TTypeKind>;
function fn_get_all_properties(obj: TObject): TList<TTypeKind>;
函数fn_get_all_properties(obj:TObject):TObjectList;
但是:
[DCC错误]uFuncMain.pas(20):E2511类型参数“T”必须是类类型
函数的结果应该是什么类型?问题在于
TObjectList
的定义如下:
TObjectList<T: class> = class(TList)
....
end;
你看,我什么都不懂(@user1879841:TheOfficial,尤其应该帮助你开始。你有什么问题?
TTypeKind
不是一个类,它是一个枚举变量。你想要的是一个TList
,而不是一个TObjectList
:函数fn\u get\u all properties(obj:TObject):TList;
Big thx用于解释!它很有用!我建议使用TArray,因为否则函数的调用方负责销毁返回的列表。或者使用基于Spring4d接口的集合类型。