Как создать массив строк с определенным элементом в одной инструкции? - PullRequest
0 голосов
/ 22 января 2019

Как создать массив строк с определенным элементом?например, я хотел бы сделать:

var myArray : Tarray<string>;
.....
myArray := ['aaa','bbb'];

что-то вроде этого, инициализировать массив в одну строку

Ответы [ 3 ]

0 голосов
/ 22 января 2019

Кроме того, что ваш код действительно работает для XE7 и выше (как уже упоминал Андреас), вы можете использовать Create для инициализации универсального массива:

  myArray := TArray<string>.Create('aaa','bbb');

Начиная с Delphi 10.3 Rio, вы можете даже комбинироватьобъявление с этим присваиванием, если myArray является локальной переменной:

  var myArray := TArray<string>.Create('aaa','bbb');
0 голосов
/ 22 января 2019

В Delphi 10.3 Rio можно объявлять переменные inline в коде:

begin
  ...
  var myArray : TArray<String> := ['aaa','bbb'];
  ...
end;

Тип может быть даже вывод :

begin
  ...
  var myArray := ['aaa','bbb'];
  ...
end;

Как уже упоминалось, ваш код работает с Delphi XE7.

Он также позволяет объявлять динамический массив обоими способами:

var
  myArray : TArray<String> = ['aaa','bbb'];  // Only works for global variables
const
  myArray : TArray<String> = ['aaa','bbb'];
0 голосов
/ 22 января 2019

Это можно сделать с помощью назначаемых типизированных констант :

const
  myArray: array [0..1] of string = ('aaa','bbb');

Убедитесь, что эта опция включена в свойствах проекта (на вкладке Compiling).

...