testgenericheritage.out

来自「格式化源码的最新板」· OUT 代码 · 共 59 行

OUT
59
字号
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 + =
减小字号Ctrl + -
显示快捷键?