考虑以下类型
type
TRecs = array[0..100000] of TRec;
PRecs = ^TRecs;
TRecObject = class
private
fRecs: PRecs;
public
constructor Create;
property Recs: PRecs read fRecs;
end;
我想让 TRec 成为通用参数。问题是我需要放在课程范围之外。因为像
T<MyType>Object = class
private
fRecs: ^array[0..100000] of MyType;
public
property Recs: ^array[0..100000] of MyType read fRecs
end
不可能。
将 PRecs 作为参数也不是一种选择,因为在我的实际对象中有与 TRec 相关的代码。
现代 Object Pascal 中有解决方案吗?如果没有,只是好奇是否有任何其他支持泛型的语言可以解决这样的问题?