在Delphi中是否可以创建一个类型别名来表示泛型记录?

6

我想为通用记录定义一个记录类型(类型别名)。这样,使用b模块的用户就可以访问 TMyGenericRecord 而无需使用a模块。我的单位是这样的:

unit a;
interface
type
  TMyNormalRecord = record
    Item: Integer;
  end;
  TMyGenericRecord<T> = record
    Item: T;
  end;
implementation
end.

unit b;
interface
type
  TMyNormalRecord = a.TMyNormalRecord;  // works
  TMyGenericRecord<T> = a.TMyGenericRecord<T>; // E2508 type parameters not allowed on this type
implementation
end.
1个回答

4

好的,谢谢回答。很遗憾。也许对于通用类有一个解决方案(存在一些问题,但是解决方案确实存在)。在Delphi中是否可能创建指向泛型类的类型别名? - Daniel Andrascik
1
@DanielAndrascik 我看不到任何解决方案,只看到让事情变得更糟的代码!;-) - David Heffernan
#3在Delphi 2007中可行吗?我正在尝试使用<T>,但是我无法将T用作参数类型。 - Secretary Of Education
@教育部长 当然不会,因为那个古老的版本是泛型之前的。 - David Heffernan
@DavidHeffernan 谢谢您的回复,您能否请查看我的最新问题,或许您可以帮我解决。 - Secretary Of Education

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接