![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проверка объкта
^Sanya © (2002-10-27 15:39:00)Забыл, как проверялось, создан объект класса - или нет... аж стыдно:)
Напомните, плиз:)
Юрий Зотов (2002-10-27 17:22:00) [1]> Blacker77 © (27.10.02 16:17)
Это не проверка. Если класс TEDit в данной точке не известен, то будет ошибка на этапе компиляции. А если известен, то он никогда не будет равен nil.
> ^Sanya
Обратите внимание на "возможно". Проверка переменной на nil сама по себе еще не дает 100%-ную гарантию. Например:
Edit := TEdit.Create(...);
...
Edit.Free;
...
if Assigned(Edit) then Edit.Text := ""; // Получаем ошибку.
Edit.Free уничтожает объект, но не меняет ссылку Edit, поэтому проверка не срабатывает. А вот при FreeAndNil(Edit) (или при ручной очистке ссылки) все было бы ОК.
^Sanya (2002-10-27 16:55:00) [2]
> down (27.10.02 16:30)
> if Assigned(Edit) then showmessage("Возможно, существует");
ВО! его-то я и хотел.
Спасибо.
down (2002-10-27 16:30:00) [3]if Assigned(Edit) then showmessage("Возможно, существует");
Blacker77 (2002-10-27 16:17:00) [4]На примере TEdit:
if TEdit<>nil then
showmessage("Существует");