在C++中使用bool而不是char有什么意义?

Dar*_*ing 5 c++ boolean bit-manipulation char

sizeof(char)和sizeof(bool)都等于1(在我的编译器/系统/无论如何,我听说它并不总是相同的值),bool只能存储true或false,而char可以更多值可以使用按位运算符作为多个bool变量(8位,每位可以用作1个bool,总共8个bool)

那么使用bool而不是char有什么好处吗?

除了可读性之外还有别的吗?我已经读过某个地方,即使占用更多内存,int的处理速度也比short或byte快.char和bool之间的速度有什么不同吗?

Dab*_*ler 12

使用的主要bool目的是表达意图.如果变量旨在存储具有true/false语义的值,则允许其他值只是潜在的错误来源.