Outils d'utilisateurs

Outils du Site


rvalue_et_lvalue

Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

rvalue_et_lvalue [2016/05/26 21:00]
detork [Portée d'une variable]
rvalue_et_lvalue [2019/02/08 05:29] (Version actuelle)
anthonyholstein
Ligne 1: Ligne 1:
  
 ^ [[ratio|Chapitre précédent]] ^ [[programmez_avec_le_langage_c|Sommaire principal]] ^ [[enum_class|Chapitre suivant]] ^ ^ [[ratio|Chapitre précédent]] ^ [[programmez_avec_le_langage_c|Sommaire principal]] ^ [[enum_class|Chapitre suivant]] ^
 +
 +__ ajouter l'operateur comma et la declaration de plusieurs variables __
  
 ====== Utiliser la mémoire avec les variables ====== ====== Utiliser la mémoire avec les variables ======
Ligne 124: Ligne 126:
 ==== Modifier la valeur d'une variable ==== ==== Modifier la valeur d'une variable ====
  
-L'intérêt d'une variable est que vous allez pouvoir la réutiliser dans des expressions. chaque fois qu'une expression contenant une variable est évaluée, la variable est remplacée par sa valeur lors du calcul.+<note warning>**Regle fondamentale** 
 + 
 +Il ne faut jamais modifier plusieurs fois une meme variable dans une ligne de code ! L'ordre d'evaluation n'est pas fixe et le comportement n'est pas definie. 
 + 
 +Par exemple : 
 + 
 +<code cpp> 
 +std::cout << ++i << ++i << std::endl; 
 +</code> 
 + 
 +Ce code modifie deux fois la variable ''i'' dans la meme ligne, ce qui produit un comportement indetermine. 
 + 
 +Note : la vraie regle est un peu plus compliquee, mais retenez cette version simple pour le moment. 
 +</note> 
 + 
 +L'intérêt d'une variable est que vous allez pouvoir la réutiliser dans des expressions. À chaque fois qu'une expression contenant une variable est évaluée, la variable est remplacée par sa valeur lors du calcul.
  
 <code cpp main.cpp> <code cpp main.cpp>
Ligne 249: Ligne 266:
  
 <code cpp> <code cpp>
-unsigned shot int const i { 12 };+unsigned short int const i { 12 };
 unsigned int j { 3456 }; unsigned int j { 3456 };
 std::vector<long int> const v { 1, 2, 3 }; std::vector<long int> const v { 1, 2, 3 };
rvalue_et_lvalue.1464289240.txt.gz · Dernière modification: 2016/05/26 21:00 par detork