C + + inte har aritmetiska operatörer såsom addition och multiplikation definierade för Bool typen . Dessa verksamheter arbetar fortfarande på grund av en process som kallas integrerad marknadsföring . Samma funktion som automatiskt konverterar bytes till ints och INTS till longs vid behov kommer också att konvertera en Bool till en int . På grund av detta kan booleska värden drivas på aritmetiskt på samma sätt som de integrerade typerna. Instruktioner
1
Konvertera booleska värden till heltal , med 0 för falskt och 1 för sant : " b = true * false " blir " . B = 1 * 0 "
2
Utvärdera heltalsuttryck genom att multiplicera värdena : " b = 1 * 0 " blir " . b = 0 " Addera 3
Konvertera resultatet tillbaka till ett booleskt värde . Noll är falskt , och allt annat är sant . Beroende på din kompilator och inställningar , kan denna omvandling generera en varning . Konvertera som : " b = 0 " blir " . B = false " Addera