Delphi: SetLength () на аргументе типа “массив TObject”

Если Вы будете программистом, много XML, анализирующие программирование библиотек, позволят Вам проанализировать XML, то произведенный это - и генерация симпатичного печатный, расположенный с отступом произвело , выходная опция.

6
задан conciliator 29 October 2009 в 08:47
поделиться

2 ответа

Вы не определили тип явно. Таким образом, у компилятора есть проблемы с их сопоставлением. Если вы определяете тип как:

type
  TObjectArray = array of TObject;

В этом нет никаких сомнений и (благодаря Mghie) вам следует использовать параметр var, потому что изменение размера может вызвать изменение указателя.

procedure Resize(var MyArray: TObjectArray);
begin
  SetLength(MyArray, 100);
end;
10
ответ дан 8 December 2019 в 12:21
поделиться

Вы смешиваете открытые массивы (параметр изменения размера) и динамические массивы (что ожидает SetLength). См. здесь для объяснения, особенно в части, озаглавленной «Путаница».

9
ответ дан 8 December 2019 в 12:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: