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

Проверка объкта   Найти похожие ветки 

 
^Sanya ©   (2002-10-27 15:39) [0]

Забыл, как проверялось, создан объект класса - или нет... аж стыдно:)
Напомните, плиз:)


 
Blacker77 ©   (2002-10-27 16:17) [1]

На примере TEdit:


if TEdit<>nil then
showmessage("Существует");


 
down   (2002-10-27 16:30) [2]

if Assigned(Edit) then showmessage("Возможно, существует");


 
^Sanya ©   (2002-10-27 16:55) [3]


> down (27.10.02 16:30)
> if Assigned(Edit) then showmessage("Возможно, существует");

ВО! его-то я и хотел.
Спасибо.


 
Юрий Зотов ©   (2002-10-27 17:22) [4]

> 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) (или при ручной очистке ссылки) все было бы ОК.



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

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



Память: 0.45 MB
Время: 0.011 c
1-21649
123Misha
2002-10-27 19:51
2002.11.07
Всплывающие меню в стиле XP


4-21865
d-coder
2002-09-23 19:36
2002.11.07
И все-таки


1-21555
Demon[DZ]
2002-10-29 16:26
2002.11.07
компонент!


3-21360
OlegID
2002-10-21 14:31
2002.11.07
периодические значения записи...


1-21568
Di_wind
2002-10-25 23:00
2002.11.07
WebBrowser




   Наверх