namespace Frage



  • Morgen,

    wenn ich folgende namespaces habe:

    namespace Foo {
    
    namespace Bar {
    
    class MyClass {
    
    };
    
    }}
    

    und jetzt folgenden 2. Namespace

    namespace Foo {
    
    namespace Möp {
    
    class MyClass2 {
       void method();
    };
    
    }}
    

    Wenn ich jetzt in Foo::Möp::MyClass2::method() die Klasse MyClass verwenden will, geht das ja mit Foo::Bar::MyClass. Einfach nur MyClass scheint nicht zu gehen. Allerdings scheint Bar::MyClass auszureichen. Wieso?



  • ryn+ schrieb:

    Wenn ich jetzt in Foo::Möp::MyClass2::method() die Klasse MyClass verwenden will, geht das ja mit Foo::Bar::MyClass. Einfach nur MyClass scheint nicht zu gehen. Allerdings scheint Bar::MyClass auszureichen. Wieso?

    Innerhalb von MyClass2 ist alles sichtbar, was in den übergeordneten Namespaces auch sichtbar ist. Foo ist einer davon, und daher ist auch Bar innerhalb von MyClass2 sichtbar.


Anmelden zum Antworten