En C++, le ternaire ou opérateur conditionnel ( ? : ) est la forme la plus courte d’écriture d’instructions conditionnelles. Il peut être utilisé comme instruction conditionnelle en ligne à la place de if-else pour exécuter du code conditionnel.
objet java en json
Syntaxe de l'opérateur ternaire ( ? : )
La syntaxe de l'opérateur ternaire (ou conditionnel) est :
expression ? statement_1 : statement_2;>
Comme son nom l'indique, l'opérateur ternaire travaille sur trois opérandes où
- expression: État à évaluer.
- déclaration_1 : Instruction qui sera exécutée si l'expression est évaluée comme vraie.
- instruction_2 : Code à exécuter si l’expression est évaluée comme fausse.
// image
L'instruction ci-dessus de l'opérateur ternaire est équivalente à l'instruction if-else donnée ci-dessous :
if ( condition ) { statement1; } else { statement2; }> Exemple d'opérateur ternaire en C++
C++
// C++ program to illustrate the use of ternary operator> #include> using> namespace> std;> > int> main()> {> > >// creating a variable> >int> num, test = 40;> > >// assigning the value of num based on the value of test> >// variable> >num = test <10 ? 10 : test + 10;> > >printf>(>'Num - Test = %d'>, num - test);> > >return> 0;> }> |
>
>Sortir
âge de Salman Khan
Num - Test = 10>
Dans le code ci-dessus, nous avons utilisé l'opérateur ternaire pour attribuer la valeur de la variable sur une en fonction de la valeur d'une autre variable nommée test.
Note: L'opérateur ternaire a la troisième priorité la plus basse, nous devons donc utiliser les expressions de manière à éviter les erreurs dues à une mauvaise gestion de la priorité des opérateurs.
Opérateur ternaire imbriqué C++
Un opérateur ternaire imbriqué est défini comme utilisant un opérateur ternaire à l’intérieur d’un autre opérateur ternaire. Comme les instructions if-else, les opérateurs ternaires peuvent également être imbriqués les uns dans les autres.
Exemple d'opérateur ternaire d'imbrication en C++
Dans le code ci-dessous, nous trouverons le plus grand des trois nombres en utilisant l'opérateur ternaire imbriqué.
C++
// C++ program to find the largest of the three number using> // ternary operator> #include> using> namespace> std;> > int> main()> {> > >// Initialize variable> >int> A = 39, B = 10, C = 23;> > >// Evaluate largest of three using ternary operator> >int> maxNum> >= (A>B) ? ((A> C) ? A : C) : ((B> C) ? B : C);> > >cout <<>'Largest number is '> << maxNum << endl;> > >return> 0;> }> |
>
>
structure de contrôle pythonSortir
Largest number is 39>
Comme nous pouvons le constater, il est possible d’imbriquer des opérateurs ternaires les uns dans les autres mais le code devient complexe à lire et à comprendre. Ainsi, il est généralement évité d’utiliser des opérateurs ternaires imbriqués.
De plus, l’opérateur ternaire ne doit être utilisé que pour du code conditionnel court. Pour un code plus volumineux, les autres instructions conditionnelles doivent être préférées.