У меня возникло такое сомнение при написании кода. Является ли 'bool' базовым типом данных, определенным в стандарте С++, или это какое-то расширение, предоставляемое компилятором? У меня возникло такое сомнение, потому что у Win32 есть "BOOL", который является ничем иным, как длинным. Также, что произойдет, если я сделаю что-то вроде этого:
int i = true;
Является ли это "всегда" гарантией того, что переменная я будет иметь значение 1, или это снова зависит от используемого компилятора? Далее для некоторых API Win32, которые принимают BOOL как параметр, что происходит, если я передаю переменную bool?