考慮的INT num
這個常量聲明:如何在一行中使用三元運算符做到這一點?
int main() {
bool a = true, b = false;
// ...
const int num = a ? (b? 2 : 4) : 4;
std::cout << num;
}
我要的是const int num
遵循這個道理表(我很抱歉,從我原來的問題已經被編輯以反映我的節目模式):
b
a true false
true 2 4
false 4 2
如何修改上面的const int num
聲明使用三元運算符來實現這個?我知道如何聲明這樣的num
是使用lambda函數和lambda函數內的嵌套if語句或switch statenents的常量,但我只是想知道如何使用三元運算符來完成此操作。作爲獎勵,如果要使用3個或更多這樣的bool值(在真值表中沒有特定的模式)會怎麼樣?
'一個? (b?2:3):(b?4:5);' –