我正在使用 ?运营商和我想表达以下内容
(a > b) ? (max = a) : (); // basically i want expression after `:` to be null
如果我在 :
后留下空括号,编译器会提示语法不正确。将 :
后的表达式留空的正确语法是什么?
最佳答案
i like to conciseness of code in ? operator
if (a > b) max = a;
更简洁,如果我们计算字符的话。这是一个糟糕的指标。
理想情况下,您的三元运算符不应引起副作用。将副作用隐藏在三元运算符中会使代码更难阅读/调试/维护等。
如果您想要副作用,请不要涉及三元运算符。
如果您想为此使用三元运算符,请考虑 max = (a > b) ? a : 最大值
。
关于c++ - 语法错误? C++中的运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14618434/