Using-Anweisung

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu C++-Namespaces - Index

Wenn Sie einige (oder alle) Elemente eines Namespace verwenden möchten, gibt es in C++ eine Möglichkeit, wie Sie ganz einfach auf vollständige Namespace zugreifen können. Die using-Anweisung bewirkt, dass an der Stelle, an der sie abgesetzt wird, alle Bezeichner in einem Namespace im Gültigkeitsbereich liegen. Die Grammatik der using-Anweisung sieht folgendermaßen aus:

using-Anweisung:

using namespace :: opt nested-name-specifier opt namespace-name;

Die using-Anweisung ist transitiv. Wenn Sie die using-Anweisung auf einen Namespace anwenden, der selbst using-Anweisungen enthält, erhalten Sie auch auf diese Namespaces Zugriff. Wenn Sie beispielsweise die using-Anweisung in Ihrem Programm ausführen, können Sie auch auf die Namespaces qux, foo und bar zugreifen.

    namespace qux {
       using namespace foo;  // Wurde zuvor definiert
       using namespace bar;  // Wurde ebenfalls zuvor definiert
       }

Die using-Anweisung fügt keine Bezeichner in Ihren lokalen Gültigkeitsbereich ein. Bezeichner, die in mehreren Namespaces definiert sind, werden erst dann problematisch, wenn sie verwendet werden sollen. Deklarationen, die den lokalen Gültigkeitsbereich betreffen, haben Vorrang. Alle anderen ähnlichen Deklarationen werden verborgen.

Warnung:  Verwenden Sie die Direktive using nicht in Header-Dateien. Sie könnten versehentlich Namespaces im Client-Quelltext zerstören.

Siehe auch