Platform-, default- und cli-Namespaces (Komponentenerweiterungen für C++)
Ein Namespace qualifiziert implizit die Namen von Sprachelementen, sodass die Namen keinen Konflikt mit den benutzerdefinierten Symbolen im vorhandenen Quellcode verursachen.
Alle Laufzeiten
Visual C++ stellt separate Namespaces für Gruppen von ähnlichen Datentypen in C++/CX und in C++/CLI bereit.Ein Namespace vermeidet Namenskonflikte zwischen identischen Symbolen.Beispielsweise kann ein Namenskonflikt verhindern, dass der Compiler Kontextbezogene Schlüsselwörter (Komponentenerweiterungen für C++) erkennt.
Windows-Runtime
Weitere Informationen finden Sie unter Namespaces und Typsichtbarkeit (C++/CX).
Anforderungen
Compileroption: /ZW
Common Language Runtime
Syntax
using namespace cli;
Hinweise
Der C++/CLI unterstützt den cli-Namespace.Beim Kompilieren mit /clr ist die using-Anweisung im Syntaxabschnitt enthalten.
Die folgenden Sprachfunktionen sind im cli-Namespace:
Anforderungen
Compileroption: /clr
Beispiele
Beispiel
Im folgenden Codebeispiel wird veranschaulicht, dass es möglich ist, ein Symbol im cli-Namespace als benutzerdefiniertes Symbol im Code zu verwenden.Sobald dies geschehen ist, müssen Sie die Verweise jedoch explizit oder implizit auf das cli-Sprachelement des gleichen Namens qualifizieren.
// 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);
}