Текущий архив: 2004.11.28;
Скачать: CL | DM;
ВнизHeapMM, KOl и строки Найти похожие ветки
← →
earl Grey © (2004-04-28 08:40) [0]Есть кострукция типа:
PSomeListItem=^TSomeListItem
TSomeListItem = object(TObj)
Num: DWORD;
Name: string;
Path: string;
...
..
end;
В коде я делаю много раз New... Free для таких item"ов. Все в порядке пока не работаю со строковыми полями. Как только начинаю трогать string"и
- течет память(и по MemProof"у и по TaskManager"у видать).
Залечил временно так - перед тем как вызвать Free всем таким полям присваиваю пустую строку. Вроде не течет.
Собс-но вопрос: Так и надо или я где-то чего-то не доглядел
← →
Gandalf © (2004-04-28 13:12) [1]А код Работы с памятью?
← →
Solik © (2004-04-28 15:22) [2]А может попробовать shortstring или string[скока надо]
← →
mdw © (2004-04-28 15:51) [3]Да, я давно заметил, что строковым полям в объектах, перед разрушением, нужно присваивать "". Иначе память утекает. Это в деструкторе делать хорошо.
← →
Владимир Кладов (2004-04-28 16:50) [4]так и должно быть. Poor Pacal object сам ничего не делает со своими полями, все работа ложится на программиста, который в деструктре пишет освобождение для всех объектов и строк.
← →
earl Grey © (2004-04-28 18:39) [5]Уже собрался код постить, а тут Владимир все и обьяснил. Кстати c shortstring"ом Poor Pascal object сам справляется. Только что проверил.
← →
Solik © (2004-04-29 07:52) [6]Дык имхо он shortstring кажется не в динамической памяти создает
Страницы: 1 вся ветка
Текущий архив: 2004.11.28;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.038 c