📄 testgenericheritage.out
字号:
program testgenericheritage;{$APPTYPE CONSOLE}
uses
SysUtils;
type
tclassdebase = class
fdata: integer;
end;
tgenerique<i> = class
fdata: i;
end;
tclassdebasederivedegenerique = class
(TGenerique<integer>)
fdata: integer;
end;
tgeneriquederiveedeclass<i> = class(TClassDeBase)
fdata: i;
end;
tgeneriquederiveedegenerique<i,s> = class(TGeneriqueDeriveeDeClass<I>)
fdata: i;
fitem: s;
end;
tgeneriquecontraint<i:
constructor> = class
fdata: i;
end;
tgeneriquederiveedegeneriquecontraint<i:
constructor,s> = class(TGeneriqueContraint<I>)
fdata: i;
fitem: s;
end;
tparent<t> = class
x: t;
end;
tenfant<s> = class(TParent<S>)
y: s;
end;
var
f: tparent<integer>;
begin
try
f :=
tparent<integer>.Create;
f.x := 10;
except
on e: Exception do
writeln(e.ClassName, ': ', e.message);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -