![]() |
#22 |
Участник
|
Цитата:
Сообщение от fed
![]() Ну я тоже когда-то много программировал на C. Там всегда есть опасность вместо if(var==1) написать if(var=1). Второй вариант конструкции вполне синтаксически легален, но вместо сравнения, присвоит значение в var, потом результат операции (1) закастует в логическое значение и потом выполнит оператор, поскольку в if() стоит истинное логическое условие. В такой ситуации можно писать условие в вывернутом формате типа if (1==var). Тут уж если нечаянно один знак равенства поставил - компилятор ошибку выдаст.
Но во первых даже в C есть более простое и изящное решение - просто включить варнинги компилятора. Все известные мне компиляторы C, (даже gcc по моему), могут выдавать варнинг при попытке использования оператора присвоения внутри if. Во вторых - а какое это вообще имеет отношение к Аксапте ? Уж там то нечаянно оператор присвоения в if() не засунешь... А отношение имеет прямое - просто показывает, что у нас нету жестких рекомендаций написания кода, поэтому все пишут "как хотят". |
|
|
![]() |
||||
Тема | Ответов | |||
Бага в Query update(true) | 5 | |||
Не срабатывает skipDatabaseLog(true) | 14 | |||
visible(true) и курсор | 6 | |||
recordLevelSecurity(true) | 12 |
|