Почему я не могу использовать TArray <string>в качестве константы класса? - PullRequest
0 голосов
/ 31 августа 2018

Когда я пытаюсь использовать константу массива внутри класса, я получаю следующую ошибку:

[dcc32 Error] TestConstants.dpr(14): E2086 Type 'TArray<T>' is not yet completely defined

Тот же код прекрасно компилируется, когда я использую его как глобальную константу или когда я использую array of string вместо TArray. Есть ли хитрость, чтобы заставить это работать?

program Project98;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils;

type
  TMyTestClass = class
  strict private
    const
      TEST_CLASS_CONSTANT: TArray<String> = ['1','2']; // <-- Error here
      TEST_CLASS_CONSTANT2: array of string = ['1','2']; // <-- No error
  end;

const
  TEST_GLOABL_CONSTANT: TArray<String> = ['3','4']; // <-- No error
  TEST_GLOBAL_CONSTANT2: array of string = ['3','4']; // <-- No error
begin
end.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...