Цитата:
Сообщение от DSPIC
Условия
X++: t= d == (5 || 10); // false и
X++: t= (d == 5 || d == 10); // true Отличаются далеко не элегантностью, а принципиальностью. В обоих случаях сис-ма посчитала логически правильно. Разберите выражения внимательно.
Во избежание получения результата, отличного от ожидаемого, в подобных случаях можно использовать более читабельные конструкции, например:
X++: if (d == 5 || d == 10)
t = true; Чуть длинее, за то понятнее.
Я думаю красота этого: перевешивает приимущества неявных преобразований.
И назидательный тон ваш совсем не уместен, эти примеры я сам написал и поэтому хорошо знаю и понимаю что в них написано.
__________________
Dynamics AX 4.0.2501.122 SP2, kernel 4.0.2163.0, MS SQL 2005
Последний раз редактировалось cerbo; 15.04.2009 в 12:46.
Причина: очепятка
|