powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Поиск: Искать ответы на сообщение: #417953  
2 сообщений из 2, страница 1 из 1
Языки программирования семейства Pascal / Изучаю новую Delphi
    #417953
Неуловимый Джо
Скрыть профиль Поместить в игнор-лист
Участник
[игнорирует гостей]
Это вот этот ролик смотрю

#27 - Parallel Programming Deep Dive: Task Monitoring, Locking, Pools, Patterns and more!
...
Рейтинг: 0 / 0
Языки программирования семейства Pascal / Изучаю новую Delphi
    #577403
s62
Скрыть профиль Поместить в игнор-лист
s62 
Участник
Неуловимый Джо [игнорируется] 

На днях открыл для себя одну фичу. Может когда-то и знал, но не помню. С множествами, set'ами было аналогичное.
Оказывается, можно в динамический массив добавить элемент вот так:
Код: Delphi
1.
2.
3.
4.
5.
6.
7.
8.
9.
var
  IntArr: array of integer;
  i: integer;

begin
  SetLength(IntArr, 0);
  i := 5;
  IntArr := IntArr + [i];
...
Коллега широко пользуется динамическими массивами в качестве контейнеров. Я сейчас стал часто использовать контейнеры из Generics.Collections. Но вот в старом коде есть, да и новом. И обычно для добавления нового элемента в конце выполняется такая последовательность: увеличивается длина на 1, потом последнему элементу массива присваивается новое значение.
Типа
Код: Delphi
1.
2.
3.
  Len := Length(Devices);
  SetLength(Devices, Len + 1);
  Devices(Len) := NewDevice;
А можно вместо этого написать
Код: Delphi
1.
Devices := Devices + [NewDevice];
Ну такой синтаксический сахар, но по-моему ничего, нормально. Я уже в паре мест использовал при редактировании старого кода.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Поиск: Искать ответы на сообщение: #417953  
Пользователи онлайн (32): Анонимы (16), Sparrow, Шоколадный01, s62, IT-Клоп, паразит, Yandex Bot, Redd, Green 1 мин., Tabula Rasa 2 мин., Bing Bot 2 мин., zNomad 4 мин., С чистого листа 4 мин., Брюквенные годы 4 мин., prostozevs 4 мин., Кусь 6 мин., sergey11 8 мин.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]