Форум: "Основная";
Текущий архив: 2002.11.07;
Скачать: [xml.tar.bz2];
ВнизTStrings Найти похожие ветки
← →
AndreyAG (2002-10-29 09:57) [0]Уважаемые мастера вот код:
var
MyStrings:array of TStrings;
begin
SetLength(MyStrings,2);
MyStrings[0].Add("First");
end;
В RunTime ошибка. Что не так!
Зараннее благодарен!
← →
MBo (2002-10-29 09:59) [1]1) перед использование объекты необходимо СОЗДАВАТЬ
2) создавать нужно объекты не абстрактного типа TStrings, а TStringList
← →
Юрий Зотов (2002-10-29 10:05) [2]Расшифровываю
:о)
var
MyStrings: array of TStrings;
begin
SetLength(MyStrings, 2);
MyStrings[0] := TStringList.Create;
MyStrings[0].Add("First");
end;
← →
AndreyAG (2002-10-29 10:07) [3]MBo и Юрий Зотов , Огромное спасибо.
← →
VaS (2002-10-29 10:43) [4]Ну и напоследок:
for i:=Low(MyStrings) to High(MyStrings) do
MyStrings[i].Free;
← →
Юрий Зотов (2002-10-29 10:47) [5]И на самый последок:
MyStrings := nil;
← →
Юрий Зотов (2002-10-29 10:51) [6]Кстати, забыл - не проще ли вместо массива использовать TList или даже TObjectList? Советую рассмотреть эти варианты.
← →
Anatoly Podgoretsky (2002-10-29 10:58) [7]Особенно второй, это самое то
← →
VaS (2002-10-29 12:54) [8]...особенно если учесть возможность SetLength() по ходу дела.
← →
KSergey (2002-10-29 13:59) [9]> MyStrings := nil;
Кто объяснит мне темному - зачем?! Как только выйдет из области видимости (переменная) - все и освободиться.
Или я сильно заблуждаюсь? (то, что иногда нужно принудительно освободить - это понятно)
← →
VaS (2002-10-29 14:42) [10]Это обнуление указателя, для исключения обращения по нему после освобождения памяти (для локальной переменной - до конца процедуры).
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.11.07;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c