• Aucun résultat trouvé

Cours Langage C/C++ Annexe sur les espace de noms

N/A
N/A
Protected

Academic year: 2022

Partager "Cours Langage C/C++ Annexe sur les espace de noms"

Copied!
4
0
0

Texte intégral

(1)

Cours Langage C/C++

Annexe sur les espace de noms

Thierry Vaira

BTS IRIS Avignon

tvaira@free.fr « v0.1

(2)

Espace de nom

En C++, un espace de nom (namespace ) est une notion

permettant de lever une ambiguïté sur des termes qui pourraient être homonymes sans cela.

Il est matérialisé par un préfixe identifiant de manière unique la

signification d’un terme. On utilise alors l’opérateur de résolution de portée ::.

Le terme espace de noms (namespace ) désigne un lieu abstrait conçu pour accueillir (encapsuler) des ensembles de termes (constantes,

variables, ...) appartenant à un même domaine. Au sein d’un même espace de noms, il n’y a pas d’homonymes.

Remarque : la notion d’espace de noms est aussi utilisée en Java, C#

et dans les technologies XML.

tv (BTS IRIS Avignon) Cours C/C++ tvaira@free.fr « v0.1 2 / 4

(3)

Utilisation d’un namespace :

#include <iostream>

using namespace std;

const int UneConstanteGlobale = 1;

int UneVariableGlobale;

namespace MonEspaceDeNom {

const int MaConstanteDePorteeNommee = 2;

int MaVariableDePorteeNommee;

int UneVariable;

}

int main(int argc, char* argv[]) { int UneVariable = 3;

MonEspaceDeNom::MaVariableDePorteeNommee = UneConstanteGlobale;

UneVariableGlobale = MonEspaceDeNom::MaConstanteDePorteeNommee;

MonEspaceDeNom::UneVariable = 4;

cout << "MonEspaceDeNom::MaVariableDePorteeNommee = " << MonEspaceDeNom::MaVariableDePorteeNommee <<

endl;

cout << "UneVariableGlobale = " << UneVariableGlobale << endl;

cout << "UneVariable = " << UneVariable << endl;

cout << "MonEspaceDeNom::UneVariable = " << MonEspaceDeNom::UneVariable << endl;

return 0;

}

tv (BTS IRIS Avignon) Cours C/C++ tvaira@free.fr « v0.1 3 / 4

(4)

L’exécution du programme d’essai nous fournit les résultats suivants :

MonEspaceDeNom::MaVariableDePorteeNommee = 1 UneVariableGlobale = 2

UneVariable = 3

MonEspaceDeNom::UneVariable = 4

tv (BTS IRIS Avignon) Cours C/C++ tvaira@free.fr « v0.1 4 / 4

Références

Documents relatifs

Tout en tenant compte de l'affirmation contemporaine du sujet, cette notion permet de caractériser géographiquement celle d'espace public et de montrer comment celle-ci

Les chaines de caractères sont invariables car lors de l'affectation d'une valeur l'espace est reservé 

Un horodatage à haute résolution peut être simulé en gardant un compte du nombre d'UUID qui ont été générés avec la même valeur de l'heure système, et en l'utilisant

Toutefois, ce document lui-même ne peut être modifié en aucune façon, par exemple en supprimant le droit d'auteur ou les références à l'Internet Society ou à d’autres

Un système de résolution d'URN ISSN utilisant l'identifiant ISSN comme nom de ressource universel au sein d'un espace de noms d'URN ISN a été développé par le centre international

Annexe 2 : Quelques noms de nationalité Page 1.. ANNEXE 2 : QUELQUES NOMS

On souhaite compléter la structure du document XML de l'exercice précédent par les attributs nom et prenom pour les auteurs et titre pour le livre, les sections et les chapitres.. Ce

- le 2ème groupe: l'infinitif se termine par -ir et fait -issons avec nous.. - le 3ème groupe : tous les autres