C++ Opérateur conditionnel ? :
Exp1 ? Exp2 : Exp3;
Ici, Exp1, Exp2 et Exp3 sont des expressions. Notez l'utilisation et le placement du deux-points. La valeur de l'expression ? : dépend du résultat de l'évaluation de Exp1. Si Exp1 est vrai, alors Exp2 est évaluée, et le résultat de Exp2 devient la valeur de toute l'expression ? :. Si Exp1 est faux, alors Exp3 est évaluée, et le résultat de Exp3 devient la valeur de toute l'expression ? :.
? est appelé l'opérateur ternaire car il nécessite trois opérandes et peut être utilisé pour remplacer les instructions if-else comme indiqué ci-dessous :
if(condition){
var = X;
}else{
var = Y;
}
Par exemple, jetez un œil au code suivant :
if(y < 10){
var = 30;
}else{
var = 40;
}
Le code ci-dessus peut être écrit sous la forme de l'instruction suivante :
var = (y < 10) ? 30 : 40;
Ici, si y est inférieur à 10, alors var se voit attribuer la valeur 30 ; si y n'est pas inférieur à 10, alors var se voit attribuer la valeur 40. Jetez un œil à l'exemple suivant :
Exemple
Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant :
value of x: 40autres extensions