Тема: if или !if =)
Показать сообщение отдельно
Старый 21.06.2012, 02:23   #9
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

Цитата:
Сообщение от rsa Посмотреть сообщение
ну например тем, что в данном случае тип не числовой а пользовательский, а объявления его в зоне видимости нету. в результате одному аллаху известно, однозначно ли его преобразование в bool или нет...
Как раз для пользовательских типов более логично использовать if(val) чем if (val !=0) потому что одному богу известно что там числовое возращается и есть ли вообще неявный каст к числовому. А вот каст к bool или отсутствует (что сразу поймем) или будет чем-то осмысленным исходя из значений этого пользовательского типа. C++11 кстати добавил хорошую поддержку - позволяет bool-каст делать explicit и работающим только в таких контекстах как if(). Вообщем с большей вероятностью ожидать разумного определения bool-каста от типа (конечно в зависимости от типа) чем int-каста.
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием