Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.03.04;
Скачать: CL | DM;

Вниз

проверка на nil   Найти похожие ветки 

 
Scott Storch ©   (2011-11-28 16:10) [0]

почему во втором случае проверка возвращает <> nil. разве Assigned(L) не аналогичен L <> nil.


procedure TForm1.Button1Click(Sender: TObject);
var
 L: TStringList;
begin
 if Assigned(L) then
   ShowMessage("= nil")
 else
   ShowMessage("<> nil");

 if L = nil then
   ShowMessage("= nil")
 else
   ShowMessage("<> nil");
end;


 
RWolf ©   (2011-11-28 16:12) [1]

локальные переменные не инициализируются компилятором.


 
RWolf ©   (2011-11-28 16:12) [2]

и да, в первом if ветки перепутаны.


 
Ega23 ©   (2011-11-28 16:29) [3]


> почему во втором случае проверка возвращает <> nil. разве
> Assigned(L) не аналогичен L <> nil.


Аналогичен. Assigned нужно для процедурных типов, дабы он не "выполнился".
А локальные переменные не инициализируются, да.


 
Anatoly Podgoretsky ©   (2011-11-28 16:36) [4]

> Scott Storch  (28.11.2011 16:10:00)  [0]

В первом IF очевидная мура написана, абсурд


 
Медвежонок Пятачок ©   (2011-11-28 17:03) [5]

почему во втором случае проверка возвращает <> nil.

Потому что проверяемое не равно нил.



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
2-1322306478
3asys
2011-11-26 15:21
2012.03.04
запись в Subitem TListView


15-1321291140
Омлет
2011-11-14 21:19
2012.03.04
«Начинающим» отпала


15-1320611403
Юрий
2011-11-06 23:30
2012.03.04
С днем рождения ! 7 ноября 2011 понедельник


1-1285138133
O.O
2010-09-22 10:48
2012.03.04
Запись в таблицу OpenOffice


2-1322210432
LDV
2011-11-25 12:40
2012.03.04
установить курсор в датасете после insert