Показать сообщение отдельно
Старый 02.07.2009, 02:34   #569
Рыцарь
 
Аватар для mks
 
Регистрация: 21.09.2007
Сообщений: 376
Сказал Спасибо: 11
Имеет 218 спасибок в 106 сообщенях
mks пока неопределено
По умолчанию

Цитата:
Сообщение от Yegor Посмотреть сообщение
а помоему в Делфи так же не будут проверяться все условия в этом случае, если первое сразу ложное. Хотя в движке скрипта ххз как сделано.
лан, поскольку точно про это никто не скажет ща придумаем как проверить.... 5мин

Добавлено через 37 минут
Проверяем легко - добавляем во второе условие деление на 0, что должно вызвать ошибку если оно будет обрабатываться:
Код:
var
x,y: integer;
begin
x:=0;
y:=0;
if (x<>0) and (y=4/0) then exit;
end.
Хм..., действительно в delphi это учтено, ошибку "division by zero" не выдает)
Код:
var
x,y: integer;
begin
x:=0;
y:=0;
if (x=0) and (y=4/0) then exit;
end.
В этом случаи выдал ошибку "division by zero"

Вывод:
Цитата:
Сообщение от i-bell Посмотреть сообщение
вопрос к "бывалым": если каждый пакет проверяется по 3 условиям, то какой вариант будет работать быстрее?

if {условие1=true} then
if {условие2=true} then
if {условие3=true} then
begin
...
end;

или

if {условие1=true} and {условие2=true} and {условие3=true} then
begin
...
end;
Варианты по скорости будут одинаковы)

ЗЫ Проще проверить чем предпологать

Последний раз редактировалось mks, 02.07.2009 в 02:34. Причина: Добавлено сообщение
mks вне форума   Ответить с цитированием