Re: false vs FALSE and true vs TRUE
От: old Dutchman Беларусь http://blogs.rsdn.org/ikemefula
Дата: 05.11.02 10:21
Оценка:
Здравствуйте Аноним, Вы писали:

А>Здравствуйте всем!

А>Вопрос такой: чем отличается в VC++ 6.0 false от FALSE и true от TRUE и почему в коде сгенерированном ATL Wizard'ом встречается и то и другое?

BOOL — long(4 байта) не тоже самое, что и bool(1 байт)
FALSE — 0 тож самое, что и false
TRUE — 1 не тоже самое, что и true. Это частный случай true.

Проверяя на TRUE
if(Func() == TRUE) ты сделаешь ошибку, если фунцыя вернет ненулевое чисто.Надо смотреть описания функций и смотреть, что они возвращают.

Надо делать так if( Func() ).
Но, с другой стороны, если функция будет возврящать FALSE,TRUE,UNDEFINED — чисто гипотетический случай — так сделаешь ошибку.

Если проверять на true — будет дополнительно производиться преобразовываться тип из bool в BOOL(aka long)

А в ATL такое — такая вот ATL.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.