| klem4 |
20.08.2006 18:56
Сообщение
#1
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Ухх что-то мозг уже не варит, куда память пропадает ?
Поменял New/Dispose на GetMem/FreeMem не помогло. {$mode objfpc}
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
![]() ![]() |
| volvo |
20.08.2006 21:23
Сообщение
#2
|
|
Гость |
klem4, ты думаешь, это - все?
У меня твоя программа вылетает с таким вот ужасом: Цитата 00403786 SYSTEM_HANDLEERRORADDRFRAME$LONGINT$POINTER$POINTER () 004021DC SYSTEM_HANDLEERRORFRAME$LONGINT$POINTER () 00404A28 SYSTEM_HANDLEERROR$LONGINT () 0040337B SYSTEM_SYSFREEMEMSIZE$POINTER$LONGINT$$LONGINT () 0040146A SYSTEM_FREEMEM$POINTER$LONGINT () __65098.pp(39) TSTACK__DONE (vmt=$0, this={FIRST = $0, LAST = $8b47c, _vptr$ = {$40902c, $61120f7c}}) __65098.pp(101) main () destructor TStack.Done; А если сделать так: destructor TStack.Done; , то не вылетает, НО: Цитата Free Before = 65456 Free After = 65472 |
klem4 Утечка памяти 20.08.2006 18:56
volvo
А ты что хотел,
new(temp); { Выделять память че... 20.08.2006 19:26
klem4 :unsure:
Вот, посмотри, везде только GetMem и Fr... 20.08.2006 19:29
volvo Ну, и ты посмотри:
function TStack.Pop : TData;
va... 20.08.2006 19:33
klem4 :) Получается GetMem для temp тут вообще не нужен.... 20.08.2006 19:38
klem4 :rolleyes:
Я это тоже пропалил :) Ужасов я правд... 20.08.2006 21:54
volvo Так... Уже ближе.
Следующий шаг: почему бы TList ... 20.08.2006 22:07![]() ![]() |
|
Текстовая версия | 9.12.2025 20:24 |