Что такое Bool в C ++?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Что такое Bool в C ++?

Сообщение Anonymous »

Я столкнулся с очень интересным кодом, который заставляет меня задуматься о том, что такое Bool. Я всегда считал, что это примитивный тип, например, int или char или long. Но сегодня я увидел что -то, что выглядело так: < /p>

Код: Выделить всё

void boolPtrTest()
{
bool thisBool = true;

boolPtrHere(thisBool);

printf("thisBool is %s\n", thisBool ? "true" : "false");
}

void boolPtrHere(bool& theBool)
{
theBool = false; // uhh, dereferencing anyone?
}
< /code>
и этот код запускается - без ошибок - и печатает «Thisbool false»! < /p>
Чтобы сделать это нечетным, я запустил следующий код: < /p>
bool myBool = new bool();
... и код работал нормально!
Вот мой вопрос: что bool? Определяется ли он на основе внедрения за внедрением? Из доказанных выше, я бы сказал, что это класс. С практической точки зрения (игнорируя вышесказанное), также казалось бы уместным определить Bool в качестве Typedef для int / char или иметь его #определить. Но как узнать, что это такое (что повлияет на то, как вы это относились)?
Я работаю в VS 2008.

Подробнее здесь: https://stackoverflow.com/questions/326 ... -bool-in-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»