Вопрос не настолько очевиден, как кажется, и мне трудно найти много информации о типе bool
в стандарте.
Согласно стандарту С++ 11, каковы гарантии, связанные с типом bool
в отношении:
- Хранение: сколько места требуется, игнорируя выравнивание? Есть ли какое-либо требование для значения, которое будет сохранено для представления
true
иfalse
? - Выбранные значения: пусть
b
имеет типbool
, выполняется ли утверждение(b == true) || (b == false)
? Является ли(false < true)
хорошо сформированным и удерживает?