有人可以告诉我为什么我得到


不兼容的类型:“ TChild”和“ TChild的类别”


 TBase = class (TObject)
 end;

 TMyList<T: TBase> = class(TObjectList<T>)
 end;


当我从基类中声明一个孩子并尝试创建TChild列表时,就会出现错误。

TChild = class (TBase)
end;

TChildList = TMyList<TChild>;

最佳答案

问题中的代码很好。这是证明,它是一个完整的程序,可以编译:

program Project1;

{$APPTYPE CONSOLE}

uses
  System.Generics.Collections;

type
  TBase = class (TObject)
  end;

  TMyList<T: TBase> = class(TObjectList<T>)
  end;

  TChild = class (TBase)
  end;

  TChildList = TMyList<TChild>;

begin
end.


显然,您需要编辑问题以发布显示故障的代码。随意将以上内容用作提供Delphi语言SSCCE的模板。

关于delphi - Delphi自定义通用列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23670013/

10-10 16:56