我在问自己是否有可能做这样的事情:
condition ? do this && THIS : else;
喜欢:
nb = (nb1 + nb2) > 9 ? (nb1 + nb2) % 10 && nb1 + 1 : 0;
请注意,这只是一个示例,没有任何意义。
最佳答案
有一个简单的方法:
condition ? function_that_does_several_things() : else_expr;
另一件事是您可以在列表中收集表达式:
int a = (1,2);
将 2
赋值给 a
。所以你可以试试这个:
condition ? (do_this, and_this) : else_expr;
但我建议不要这样做;真的很难看出这里发生了什么,很多人在看到这样的代码时会感到困惑、惊讶和沮丧。
关于C 三进制 : do two distinct things,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26341663/