Plateforme, valeur par défaut et espaces de noms cli (C++/CLI et C++/CX)

Un espace de noms qualifie les noms des éléments du langage afin que les noms n'entrent pas en conflit avec des noms sinon identiques ailleurs dans le code source. Par exemple, une collision de nom risque d’empêcher le compilateur de reconnaître des mots clés contextuels. Les espaces de noms sont utilisés par le compilateur mais ne sont pas conservés dans l'assembly compilé.

Tous les runtimes

Visual Studio offre un espace de noms par défaut pour votre projet lorsque vous créez le projet. Vous pouvez renommer manuellement l’espace de noms, même si, dans C++/CX, le nom du fichier de .winmd doit correspondre au nom de l’espace de noms racine.

Windows Runtime

Pour plus d’informations, consultez Espaces de noms et visibilité de type (C++/CX).

Spécifications

Option du compilateur : /ZW

Common Language Runtime

Syntaxe

using namespace cli;

Notes

C++/CLI prend en charge l’espace de noms cli. Lors de la compilation avec /clr, l’instruction using de la section Syntaxe est implicite.

Les fonctionnalités de langage suivantes se trouvent dans l’espace de noms cli :

Spécifications

Option du compilateur : /clr

Exemples

L’exemple de code suivant montre qu’il est possible d’utiliser un symbole dans l’espace de noms cli comme symbole défini par l’utilisateur dans votre code. Toutefois, une fois que vous l’avez fait, vous devez qualifier explicitement ou implicitement vos références à l’élément de langage cli du même nom.

// cli_namespace.cpp
// compile with: /clr
using namespace cli;
int main() {
   array<int> ^ MyArray = gcnew array<int>(100);
   int array = 0;

   array<int> ^ MyArray2 = gcnew array<int>(100);   // C2062

   // OK
   cli::array<int> ^ MyArray2 = gcnew cli::array<int>(100);
   ::array<int> ^ MyArray3 = gcnew ::array<int>(100);
}

Voir aussi

Extensions de composants pour .NET et UWP