Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.26;
Скачать: CL | DM;

Вниз

Помогите. Ошибка при работе со списком.   Найти похожие ветки 

 
Valentino ©   (2003-06-08 05:30) [0]

Здравствуйте!

Делаю примерно следующее:

TForm1.Button1Click();
...
List1.TList.Create;
в цикле
New(PQ); //
PQ^.Otvets:=TStringList.Create;
...
List1.Add(PQ);
конец цикла
PQ:=List1.Items[1];
Form2.Show;


На Form2 работаю со списком, поочередно загружая в PQ элементы, далее:

TForm2.FormClose();
List1.Free;
PQ.Otvets.Free;

Если один - два раза это все проделываю, все нормально,
но если форму 2 несколько раз открываю-работаю со списком-закрываю,
то по нажатию на Button1 выскакивает Access Violation.
Иногда даже Out of Memory. Почему?


 
Anatoly Podgoretsky ©   (2003-06-08 08:44) [1]

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


 
Sha ©   (2003-06-08 09:06) [2]

Убивать сначала надо тех, что помоложе :)


 
Palladin ©   (2003-06-08 12:31) [3]

так, для обещего понимания проблемы
TList понятия не имеет что он хранит и потому ответственность на освобождени того что он хранит ложится на программиста...


 
Всеволод Соловьёв ©   (2003-06-08 16:12) [4]

написано
List1.TList.Create;
Не правильнее ли написать List1:=TList.Create?


 
Всеволод Соловьёв ©   (2003-06-08 16:25) [5]

Если во втророй форме не прописано uses form1;, тогда надо прописать. Только не спрашивай, где это прописать :)


 
Valentino ©   (2003-06-09 00:07) [6]

Всеволод, List1:=TList.Create конечно, я просто быстро ручками этот вопрос набирал и чето там напутал, тем более, как бы оно в Делфях-то работало, если там было так.

Palladin, так если TList понятия не имеет, что он хранит, что делает тогда Free?



 
Palladin ©   (2003-06-09 00:15) [7]

Тоже что и free у остальных! Себя освобождает! что же еще?
посмотрел бы исходники и увидел что он осовбождает!
ты что считаешь что TList знает что содержится по указаным адресам? странный у тебя ход мыслей... дали бы тебе почтовый адрес, просто почтовый адрес без описания что по этому адресу, ты бы даже понятия не имел как обращатся к тому что по этому адресу находится!



Страницы: 1 вся ветка

Текущий архив: 2003.06.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
14-84655
PaulSin
2003-06-10 13:18
2003.06.26
Сабж - значение слова ?


14-84552
Саня
2003-06-07 14:17
2003.06.26
Где взять навороченый конвертор всяких баз.


1-84334
dfg
2003-06-08 21:18
2003.06.26
График


4-84815
sergey2
2003-04-22 13:14
2003.06.26
Как создать кнопку в заголовке окна?


1-84103
NaZGHUL
2003-06-10 11:43
2003.06.26
Почему срабатывает условие