【问题标题】:What should I do about an internal error when I declare a generic "array of T"?当我声明一个通用的“T 数组”时,我应该如何处理内部错误?
【发布时间】:2012-02-24 10:52:02
【问题描述】:

此单元无法在 XE2 Update 3 中编译,出现“[DCC 致命错误] Test.pas(22): F2084 Internal Error: URW1147”

unit Test;

interface

type
  TSorter<T> = procedure(var Values: array of T);

  TTest = class
  public
    procedure Sort<T>(const Sorter: TSorter<T>);
  end;

implementation

procedure TTest.Sort<T>(const Sorter: TSorter<T>);
begin
end;

end.

我已提交质检报告:QC#103671

有人对此有解决方法的想法吗?

【问题讨论】:

    标签: delphi generics delphi-xe2


    【解决方案1】:

    如果您将 TSorter 声明替换为 TSorter&lt;T&gt; = procedure(var Values: TArray&lt;T&gt;);,它在 XE 上编译得很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-21
      • 1970-01-01
      • 1970-01-01
      • 2011-12-01
      • 2013-01-02
      • 2011-05-09
      • 2023-04-07
      • 2018-03-20
      相关资源
      最近更新 更多