Angeblich unbekannter namespace



  • 😕
    Hallo,

    In der Datei a.h eines Projekts aus mehreren Dateien befindet sich der namespace x. Dieser wird in der Datei b.h, die diese Datei includiert nicht als Name eines namespace angesehen. Kann mir jemand sagen, woran das liegen könnte (es gibt auch noch mehr Dateien im Projekt, die Implementation erfolgt mit BCB6)?
    Vielen Dank!



  • Nicht geschlossene Klammer hinter dem Namespace?!
    Ein bisschen Code wäre nett...



  • kann zum Beispiel so passieren:

    a.h:

    namespace a {
    #	include "b.h"
    }
    

    b.h:

    namespace b {
        int foo( )
        {
            return 1;
        }
    }
    

    main.cpp:

    #include <iostream>
    
    #include "a.h"
    
    using namespace std;
    using namespace b;   // *)
    
    int main( )
    {
        cout << foo( ) << endl;
    }
    

    😉 b kann nicht gefunden werden, da dieser namespace durch "geschicktes" inkludieren nun in a steckt. Man müsste jetzt

    using namespace a::b;
    

    verwenden.

    ...viel Glück beim Fehlersuchen!

    Greetz, Swordfish


Anmelden zum Antworten