Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

За 2004-12-24

Re: Динамическая память

Тема: Динамическая память

> Привет программисты,
>
> Пишу так:
> type
> PData = ^TData;
> TData = record
> ...
> Next: PData
> end;
Может я чего не понимаю..... Но зачем это в Delphi????
Там есть
aData : array of tData;
- динамические массивы!!
Или Вам видение (задание) такое было?
--
Пока, удачи. Борис Сурин surin_***@m*****.ru

Номер выпуска : 3902
Возраст листа : 459 (дней)
Количество подписчиков : 514
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/286362
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.prog.prog
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru?subject=comp.soft.prog.prog

http://subscribe.ru/ http://subscribe.ru/feedback

   2004-12-24 16:25:33 (#286362)

Re: Динамическая память

> Привет программисты,
> Пишу так:
> type
> PData = ^TData;
> TData = record
> ...
> Next: PData
> end;
> ......................
> var
> P, M: PData;
> ......................
> P:=M^.Next;
> Dispose(M)
> M:=P;
> ......................
> Ошибка: Почему-то в М оказывается, то что должно было удалиться, где
> искать ошибку???

А M^.Next у тебя случайно не ссылался на M?

Если ты не забыл предварительно выделить память для M^.Next, т.е.
new(M^.Next);
P:=M^.Next;
.......................
то всё должно быть нормально. Можешь ещё попробовать после Dispose(M) заново
выделить память
new(M);
M:=P;
У меня этот вариант отлично работает.

Номер выпуска : 3901
Возраст листа : 459 (дней)
Количество подписчиков : 514
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/286360
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.prog.prog
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru?subject=comp.soft.prog.prog

http://subscribe.ru/ http://subscribe.ru/feedback

   Денис Селезнев 2004-12-24 16:12:51 (#286360)

Динамическая память

Привет программисты,

Пишу так:
type
PData = ^TData;
TData = record
...
Next: PData
end;
......................
var
P, M: PData;
......................
P:=M^.Next;
Dispose(M)
M:=P;
......................

Ошибка: Почему-то в М оказывается, то что должно было удалиться, где
искать ошибку???
Пробывал различные вариации, типа
P:=M;
M:=P^.Next;
Dispose(P);
и т.п. - не помогает :(

Использую Delphi 7 без SP

Афоризм напоследок: Столько дел, что и работой занятся некогда...
23 декабря 2004 г. 22:14:16

Просто студент
Eugene mailto:rav***@o*****.ru

Номер выпуска : 3900
Возраст листа : 459 (дней)
Количество подписчиков : 514
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/286169
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru

-*Информационный канал Subscribe.Ru
Подписан адрес:
Код этой рассылки: comp.soft.prog.prog
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru?subject=comp.soft.prog.prog

http://subscribe.ru/ http://subscribe.ru/feedback

   2004-12-24 08:46:31 (#286169)