Когда я пытаюсь использовать константу массива внутри класса, я получаю следующую ошибку:
[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.