Смущает ли заявление? - PullRequest
       25

Смущает ли заявление?

12 голосов
/ 09 марта 2010

Я всегда использую оператор If (в C #) как (1. Альтернатива);

if (IsSuccessed == true)
{
   //
}

Я знаю, что нет необходимости писать "== true" как (2. Альтернатива));

if (IsSuccessed)
{
   //
}

Но я использую его, потому что он более читабелен и не вызывает проблем с производительностью. Конечно, это мой выбор, и я знаю, что многие разработчики программного обеспечения предпочитают первую альтернативу. Какое использование лучше и почему?

Ответы [ 13 ]

1 голос
/ 09 марта 2010

Больше всего я вижу: (что я делаю)

if (IsSuccessed)
{
   //
}

и как альтернатива для C ++, для C # это не нужно (см. Комментарий):

if (true == IsSuccessed)
{
   //
}

альтернатива состоит в том, чтобы не допустить совершения ошибки вместо сравнения.(= против ==)

1 голос
/ 09 марта 2010

Я пойду на второй. По крайней мере, мне проще. В первом варианте мне всегда интересно, почему проводится сравнение. Проверьте тип левой части, чтобы быть уверенным, что ни один разработчик на acid не перегружает оператор ==, делая сравнение между его классом и параметром bool.
Первое также приводит к ошибкам, второе - нет.
if(a) может потребоваться изменить на if(a||b) или if(a&&b) в первой версии, это может закончиться как if(a == true || b) и if(a == true && b) в первой b является избыточной, а последняя равна if(a==b)

1 голос
/ 09 марта 2010

Я использую первое, когда я начал программировать, но вроде привыкну ко второму варианту. Это также экономит время на ввод дополнительных букв.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...