|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как при обращении к ещё не созданному элементу массива, создать его?
Доброго всем вечара.
Возник интересный вопрос. Я никогда с этим раньше не сталкивался. Мне нужно при обращении к ещё не созданному элементу массива, создать его. Всё это делается при участии ООП. Есть Код:
type LocationArray = array of Integer; TP = class private FLocation : LocationArray; protected procedure SetLocation(Location:LocationArray); public property Location : LocationArray read FLocation write SetLocation; end; ... procedure TMat4fLocations.SetLocation(Location:LocationArray); begin SetLength(FLocation,length(FLocation)+1); end; XXX.Location[0]:=0;[/code] Я получаю ошибку AV, и не секрет почему. Ведь XXX.Location[0], то, не существует! Как мне быть, друзья? Я раньше пихал SetLength в свою рабочую прогу и не парился. Но это неудобно и по невнимательностьи можно легко выделать слишком мало (и получить опять же AV)/много памяти... Да и модуль разрабатывается на благо всех юзвергов GLSL 3.30 ( http://www.glscene.ru/forum_viewtopic.php?12.48232.60 ), а не под себя. Делаем'c разные игры. Искать на glscene.ru |