我只是想知道"?"
和":"
字符的作用。我正在处理一个问题,遇到了?
。解决方案显示一个问号,我不知道它做什么。另外:
运算符的作用是什么?
return firstNum > secondNum ? vector<int>{secondNum, firstNum}:vector<int>{firstNum, secondNum};
E1 ? E2 : E3
条件运算符的第一个操作数被求值,上下文转换为bool。经过价值评估和如果结果是,则第一个操作数的所有副作用都已完成如果为true,则评估第二个操作数。如果结果为假,则第三个操作数被求值。
[补充@Andreas DM的内容,这类似于编写if-else
语句的版本。与使用if
不同,它返回值。
if (condition) {
std::cout << "True\n";
} else {
std::cout << "False\n";
}
相当于:
std::cout << (condition ? "True\n" : "False\n");