タイトルはかなり...
constructor
なぜ制約 を使用したいのでしょうか?
それは明らかにclass
制約によって暗示されています。
単体で使用すると、作成したもので何もできなくなります。
なぜそれが存在するのですか?
追加情報:
注意として、次のコードは「コンストラクター」制約を追加するまでコンパイルされません。
program Project3;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils;
type
TSomeClass<T: class> = class
function GetType: T;
end;
{ TSomeClass<T> }
function TSomeClass<T>.GetType: T;
begin
Result := T.Create;
end;
begin
try
{ TODO -oUser -cConsole Main : Insert code here }
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.