![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Гость_Игорь |
|
|||
|
Unregistered |
В общем возможна такая ситуация :
О <> nil, но в то же время реально объекта уже не существует. Как проверить валидна ли ссылка О ? if Assigned(О) не помогает. На крайняк можно try-except использовать конечно, но вдруг есть более элегантное решение ? Заранее спасибо. |
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
Лучше вместо O.Free делать FreeAndNil(O)
-------------------- С уважением, г-н Посол. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
|
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
Snowy
Похоже, Игорю нужно проверить валидность ссылки не до O.Free, а после... -------------------- С уважением, г-н Посол. |
|||
|
||||
| Snowy |
|
||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Извиняюсь, что-то я стал читать на бегу. Слова "уже" не подметил...
Смотрится более неаккуратно, но полученный в итоге код мне больше нравится, чем
Как-то мне непонятна логика писавшего эту функцию... |
||||||||
|
|||||||||
| Гость_Игорь |
|
|||
|
Unregistered |
Идея понятна.
Всем спасибо. Что качается текста FreeAndNil, то действительно не очень смотрится. Вобщем, я думаю, проще переписать эту процедуру. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |