Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.07;
Скачать: 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 вся ветка

Текущий архив: 2002.11.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
14-21784
PVOzerski
2002-10-19 03:08
2002.11.07
о мыши Genius


1-21575
Kolya
2002-10-30 03:44
2002.11.07
Что в буффере обмена?


14-21777
^Sanya
2002-10-18 19:49
2002.11.07
Кто знает, на чём


6-21712
samson
2002-09-04 19:48
2002.11.07
Модемное соединение


3-21427
Chak
2002-10-18 23:54
2002.11.07
Date&Time in ORACLE