什么:“while((stuff)?false :( otherstuff)){}”是什么意思?

时间:2016-05-04 00:57:59

标签: c++ ternary-operator

我正在看一个c ++ while循环:

while ((stuff) ? false : (otherstuff))
{
  commands;
}

我真的不明白它正试图用“?false:”部分做什么? 任何人都可以解释这意味着什么吗? 我已经尝试过了,但我并没有得到任何帮助。

2 个答案:

答案 0 :(得分:2)

正在使用ternary conditional operator来有效执行检查:

while (!(stuff) && (otherstuff))

如果stuff为真,则评估三元组的第一个选项(评估为false),如果它为假,则评估为其他语句。

答案 1 :(得分:0)

写这个是一个非常糟糕的方式:

{{1}}