次のタイプを検討してください
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
不可能です。
実際のオブジェクトには TRec 関連のコードがあるため、PRecs をパラメーターにすることもできません。
現代の Object Pascal に解決策はありますか? そうでない場合は、このような問題を解決できるジェネリック対応言語が他にあるのでしょうか?