Es gibt (endlich) einen Datentyp für logische Werte (wahr oder falsch): bool.
Dazu kommen zwei vordefinierte Konstanten true und false.
Logische Ausdrücke (also das Ergebnis von Vergleichsoperatoren) liefern in C++ nicht mehr int-Ergebnisse, sondern bool.
Man kann einen Ausdruck dieses neuen Typs problemlos in int und zurück verwandeln, sodaß ein Vergleich mit 0 jederzeit wie gewohnt möglich ist.
Zudem ist es möglich, an eine bool-Variable erst den Wert false zuzuweisen, und die Variable mit dem Operator ++ auf true zu setzen.