Вниз
Скачать: CL | DM;

динамическая память   Найти похожие ветки 

← →
jackie   (2002-11-27 08:28) [0]

Знатоки! помогите пожалуйста!
простейшая ситуация: смотрю и удивляюсь )
finalize ( pointer)
pointer - сто пудов не нулевой
finalize вылетает с EInvalidPointer-ом, равно как и любая другая операция с этим указателем (типа SetLength)
причем время от времени - может сработать, а может не сработать

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


← →
Ola   (2002-11-27 08:35) [1]

Ну помогите, плиззззз Jackie, а то у меня сердце разрывается, глядя, как он мучается....


← →
Starkom ©   (2002-11-27 08:44) [2]

а пойнтер на что? или просто пойнтер?


← →
jackie   (2002-11-27 08:49) [3]

конечно не просто pointer
TBooleanDynArray, например


← →
Starkom ©   (2002-11-27 08:56) [4]

в хелпе же достаточно ясно написано, когда можно использовать finalize.
код надо смотреть


← →
Юрий Зотов ©   (2002-11-27 09:02) [5]

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


← →
Tano ©   (2002-11-27 22:29) [6]

Проверь элементарные вещи: область видимости переменной, соответствие типов. Может быть вызывается для локальной переменной в процедуре, при этом надо помнить, что при входе в процедуру локальные переменные НЕ ИНИЦИАЛИЗИРОВАНЫ, то есть попытка вызвать для неинициализированной переменной finalize - лотерея, так как даже вероятность равенства nil невелика. В таком случае для надежности я перед началом любого использования присваиваю nil.


← →
Koster   (2002-11-29 05:25) [7]

попробуй FreeMem


← →
KSergey ©   (2002-11-29 06:24) [8]

Как верно заметил(а) Ola - сердце разрывается глядючи на страдания.
Но вот если бы вопрос дополнить кодом - возможно, можно было бы помочь чем-то более конструктивным, нежели сострадание...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.014 c
1-27943
Yuraz
2002-11-29 09:54
2002.12.09
Не получается вставить в поток небольшую (длительную) процедуру.


14-28274
solder
2002-11-19 13:06
2002.12.09
комплексное число


1-27991
pavel_ak
2002-11-29 14:21
2002.12.09
TOleContainer не хочет создавать объект


6-28186
AlexMain
2002-10-10 21:56
2002.12.09
Как положить письмо сразу на POP3 без SMTP?


6-28177
AlexMain
2002-10-12 17:09
2002.12.09
Как получить МХ запись из DNS?




   Наверх