Вниз
Скачать: 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.012 c
14-21814
andrey_pst
2002-10-20 19:15
2002.11.07
Обработка сообщений Win9x


3-21367
SkyWalker
2002-10-17 12:29
2002.11.07
BDE


3-21373
Ivanof
2002-10-17 00:14
2002.11.07
Файл вместо QReport


14-21730
Me2
2002-10-17 16:10
2002.11.07
Python


1-21631
sas1
2002-10-24 21:56
2002.11.07
заполнить массив Items компонента Checklistbox




   Наверх