Я из C++ фона и я путать с одним из заявления, как этотКак реорганизовать оценка короткого замыкания
if TUtils.CheckValue(objData, LChan) and
(LChan.Int.Value = (aObject as TomDBChan).Int.Value) then
begin
//Operation
end;
это нормально, чтобы преобразовать это в
LChan.Int.Value = (aObject as TomDBChan).Int.Value ;
if TUtils.CheckValue(objData, LChan) then
begin
//Operation
end;
или должен я также проверьте, имеет ли значение LChan.Int.Value в нем?
Ваш реорганизованный код не компилируется. Какова ваша цель? –
Я также не понимаю ссылку на C++. Логические операторы в C++ также оцениваются по короткому замыканию слева направо. –
Мое самое лучшее предположение заключается в том, что вы путаетесь между назначением C++ и операторами равенства, = и == соответственно. В Delphi эквиваленты: = и =. Как только вы поняли, что используют операторы, и тот факт, что есть только сравнение, и нет назначения, вы поймете и узнаете, что вы ничего не должны менять. –