tribool是个比较有意思的类型,和原来的bool值很像,但它有3个值,true、false和indeterminate(不确定)。 //第1个例子 tribool b = some_operation(); if (b) { // b is true } else if (!b) { // b is false } else { // b is indeterminate } //第2个例子 tribool x = some_op(); tribool y = some_other_op(); if (x && y) { // both x and y are true } else if (!(x && y)) { // either x or y is false } else { // neither x nor y is false, but we don't know that both are true if (x || y) { // either x or y is true } }