Почему я не могу назначить одну упакованную строку другой?

В документации говорится:

Два разных типа совместимы, если они удовлетворяют хотя бы одному из следующих условий.

Оба типа упакованных строк с одинаковым количеством символов.

Однако в Delphi Tokyo это не компилируется:

procedure TForm2.Button3Click(Sender: TObject);
var
  LSource: packed array [0..3] of Char;
  LTarget: packed array [0..3] of Char;
begin
  LSource := '1234';
  LTarget := LSource; // ← ← ← E2008 Incompatible types
  ShowMessage(LTarget);
end;

Существует не так много документации по упакованным строкам. Используя packed array[1..4] нарушает присваивание из строкового литерала. И удаление packed идентификатор не меняет вообще. Я что-то пропустил?

0 ответов

Другие вопросы по тегам