Next: Les types énumérés Up: Les apports syntaxiques Previous: Les commentaires

L'opérateur de portée

Dans un programme C, si une variable locale a le même nom qu'une variable globale, c'est elle qui est utilisée dans le bloc de définition de cette variable. La variable globale n'étant pas accessible. En C++, il est possible d'exploiter la variable globale en faisant précéder cette variable du double symbole '::'.


  int a=1 ; // variable globale
  ...
  { char a='c' ;
         // affichage des deux variables
         cout << a << ::a << endl ;
à détailler la portée dans les variables for ainsi que la déclaration de variables à n'importe quel endroit dans un bloc. l'opérateur '::' fait toujours référence à la variable globale

#include <iostream.h>
int x=3 ;
int main(void) {
  cout << x << endl ; // affiche 3
  char x='c' ;
  cout << x << endl ;  // affiche c
  cout << ::x << endl ;  // affiche 3
  {
         cout << "sous-bloc" << endl ;
         float x = 3.14 ;
         cout << x << endl ;  // affiche 3.14
         cout << ::x << endl ;  // affiche 3
  }
  return 0 ;
}

@
vendredi, 7 novembre 1997, 14:51:48 MET