bool (C++)
Это ключевое слово встроенный тип.Переменная этого типа может иметь значения true и false.Условные выражения имеют тип bool и т имеют значения типа bool.Например, i!=0 теперь есть true OR false в зависимости от значения i.
Значения true и false связь имеют следующее:
!false == true
!true == false
в следующей выписке:
if (condexpr1) statement1;
If condexpr1 существует true" statement1 всегда выполняется; If condexpr1 существует false" statement1 никогда не выполняется.
Если постфикс или префикс ++ оператор применяется к переменной типа boolпеременная имеет значение true.Постфикс или префикс -- оператор не может применяться к переменной данного типа.
bool тип участвует в целых промотированиях.Правостороннего значения типа bool может быть преобразован в r-значению типа intи false становить нулю и true становить одно.Как отдельного типа, bool участвующий в разрешении перегрузки.
Только для систем Microsoft
В визуальном элементе C++4.2 стандартные файлы заголовка C++ содержится a typedef это приравниваемое bool с int.В Visual C++ 5,0 и поздних версиях bool реализует как встроенный тип с размером 1 байт.Это означает, что на Visual C++ 4,2, вызов sizeof (bool) создает 4, пока в Visual C++ 5,0 и более поздних версиях тот же вызов приводит 1.Это может вызвать проблемы целостности памяти, если вы определили элементы структуры типа bool в Visual C++ 4,2 и смешивайте объектных файлов (OBJ) и/или встроенные библиотеки DLL с 4,2 до 5,0 или более последним компиляторами.
__BOOL_DEFINED макрос можно использовать для создания программу-оболочку код, который зависит ли on bool поддерживает.
Пример
// bool.cpp
#include <stdio.h>
int main()
{
#if !defined(__BOOL_DEFINED)
printf_s("bool is not supported\n");
#elif defined(__BOOL_DEFINED)
printf_s("bool is supported\n");
#endif
}