C++ Operador condicional ? :
Exp1 ? Exp2 : Exp3;
Donde Exp1, Exp2 y Exp3 son expresiones. Observe el uso y la posición de los dos puntos. El valor de la expresión ? : depende del resultado de evaluar Exp1. Si Exp1 es verdadero, se evalúa Exp2, y el resultado de Exp2 es el valor de toda la expresión ? :. Si Exp1 es falso, se evalúa Exp3, y el resultado de Exp3 es el valor de toda la expresión ? :.
? se denomina operador ternario porque requiere tres operandos y puede usarse en lugar de una sentencia if-else como se muestra a continuación:
if(condition){
var = X;
}else{
var = Y;
}
Por ejemplo, observe el siguiente código:
if(y < 10){
var = 30;
}else{
var = 40;
}
El código anterior puede escribirse como la siguiente declaración:
var = (y < 10) ? 30 : 40;
Aquí, si y es menor que 10, a var se le asigna 30; si y no es menor que 10, a var se le asigna 40. Vea el siguiente ejemplo:
Ejemplos
Cuando el código anterior se compila y ejecuta, produce los siguientes resultados:
value of x: 40Otras extensiones
Operadores de C++