Есть ли в этом смысл или нет?
Какое значение лучше использовать? Булева истина или целое число 1?
Ответы (3)
Логическое значение true — это логическое значение. Используйте его всякий раз, когда вы хотите указать, что определенное бинарное условие выполнено.
Целочисленный литерал 1 является числом. Используйте его всякий раз, когда вы что-то считаете.
Не используйте целые числа для логических значений и наоборот. Они разные.
Рассмотрим переменную int isEnabled. Конечно, я могу предположить, что 0 и 1 могут быть единственными предполагаемыми значениями для этой переменной. Но с точки зрения языка ничто не мешает мне назначить 4247891. Однако использование логического значения ограничивает допустимые значения true и false. Это не оставляет места для спекуляций.
(С++ int и bools несколько конвертируемы, но обычно это не одобряется)
Я рекомендую использовать true, если ваш тип логически является логическим. Это будет гораздо более понятно с точки зрения намерений, что сделает ваш код более удобным для сопровождения.
Для чего? Используйте логическое значение для логического значения; используйте целое число, когда вы что-то считаете.