Salut ,
je suis débutante en langage c++. Pouvez - vous m'expliquer cette instruction:
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part double w = tab[i]?tab[i]:0.00001;
Salut ,
je suis débutante en langage c++. Pouvez - vous m'expliquer cette instruction:
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part double w = tab[i]?tab[i]:0.00001;
Bonjour,
C'est ce qu'on appelle une condition ternaire :
Si expr1 est vrai => expr2 est lu
Code : Sélectionner tout - Visualiser dans une fenêtre à part (expr1) ? expr2 : expr3
Sinon expr3 est lu
Le résultat peut-être stocker dans une variable (comme dans votre exemple).
Merci
Formellement, ? : est un opérateur ternaire.
Il prend trois expressions comme opérandes, et constitue une expression, comme le ferait + ou /.
Sa valeur est comme l'a dit booMan:
cond ? a : b
a si cond est vrai, b sinon.
cond doit être convertible en booléen.
a et b doivent être du même type, qui sera le type complet.
Cela peut condenser un code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 int selon(...) { if (condition pas trop longue) { return fonction(un_argument_fixe, un_autre_argument_fixe, un_troisieme_argument_constant, 1); } else { return fonction(un_argument_fixe, un_autre_argument_fixe, un_troisieme_argument_constant, 2); } } //ou int selon(...) { return fonction(un_argument_fixe, un_autre_argument_fixe, un_troisieme_argument_constant, (condition pas trop longue ? 1 : 2) ); }
Mes principes de bases du codeur qui veut pouvoir dormir:Pour faire des graphes, essayez yEd.
- Une variable de moins est une source d'erreur en moins.
- Un pointeur de moins est une montagne d'erreurs en moins.
- Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
- jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
- La plus sotte des questions est celle qu'on ne pose pas.
le ter nel est le titre porté par un de mes personnages de jeu de rôle
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager