Возможные дубликаты:
Как проверить равные? (0 == i) или (i == 0)
Почему в С# часто видят "null!= variable" вместо "variable!= null" ?
Я смотрел на нечетный учебник здесь и там, а также на некоторый код DirectX и заметил, что многие опытные программисты на C++ пишут выражения следующим образом:
(<constant> == <variable>)
а не то, что предпочитает моя обычная мудрость:
(<variable> == <constant>)
например. if (NULL == ptr)
, а не if (ptr == NULL)
. Я предпочитаю вторую альтернативу, если нет других причин для выбора первого, моя причина в том, что переменная, кажется, является "получающим" концом выражения.
Но я подозреваю, что первый используется, чтобы избежать непреднамеренного назначения значения константы переменной с помощью =
, а не ==
. Правильно ли это?