Я думаю о «true» / «TRUE» и «false» / «FALSE» как о синтаксическом сахаре, решении проблемы, которой никогда не было. Я всегда думал, что проще использовать и читать «1» и «0».
Когда вы думаете о включении или выключении флагов в регистрах, думаете ли вы об 1 или 0 или об истинах и ложных значениях? Что произойдет, если вы захотите сохранить несколько флагов в одной переменной? 1 и 0 универсальны.
Я думаю, что слово "ложь" слишком длинное для своего блага. Когда я вижу «0», он выделяется в моей голове как красный знак остановки. Стоп-знаки красного цвета, потому что красный цвет привлекает внимание людей. Читать слово «ложь» - это все равно, что видеть зеленый знак остановки.
Итак, к черту bool и BOOL. Я по умолчанию int.
... но, действительно, правильные логические флаги - это наименьшее беспокойство в языке с таким количеством способов ошибиться, как C ++.