Conflicting declaration 'NOT_ASSIGNED'



  • Hallo,

    Versuchs mal so

    _tcpConnectionType    = TcpConnectionType::NOT_ASSIGNED;
    

    Der Code von Ethon geht nur wenn dein Compiler den neuen Standard beherrscht.



  • Braunstein schrieb:

    Der Code von Ethon geht nur wenn dein Compiler den neuen Standard beherrscht.

    Das wird er wohl nicht... Dev-Cpp ist nicht so pralle. Bin damit aber "groß geworden" und hänge daher bisschen daran, vor Allem, weil es bisher immer gereicht hat.

    Danke für eure Tipps 😉 Werde es mal mit einem manuellen Update von MinGW probieren oder gleich CodeBlocks laden.

    Danke, DerCoder


  • Mod

    Es gibt auch eine neue (Beta-)Version von Dev-C++ in dem der Uraltcompiler gegen einen getauscht wurde, der ziemlich standardkonform (C++98, nicht C++11!) ist.



  • @DerCoder: TcpConnectionType::NOT_ASSIGNED
    @Ethon: Kommt wohl auf den Kompiler und seiner C++11 Unterstützung an.



  • Mit Code::Blocks wills auch nicht so ganz klappen:

    Die scoped enums (enum class TcpConnectionType...) erzeugen eine Warnung. Das ist zwar nicht schlimm, stört mich aber!
    'warning: scoped enums only available with -std=c++0x or -std=gnu++0x'

    Beide Varianten

    _tcpConnectionType	= TcpConnectionType.NOT_ASSIGNED; //error: expected primary-expression before '.' token
    _tcpConnectionState	= TcpConnectionState.NOT_ASSIGNED; //error: expected primary-expression before '.' token
    

    als auch

    _tcpConnectionType	= TcpConnectionType::NOT_ASSIGNED; //error: 'TcpConnectionType' is not a class or namespace
    _tcpConnectionState	= TcpConnectionState::NOT_ASSIGNED; //error: 'TcpConnectionType' is not a class or namespace
    

    funktionieren nicht!



  • Was hat _tcpConnectionType für ein Typ? Zeige die Dekl.



  • theta schrieb:

    Was hat _tcpConnectionType für ein Typ? Zeige die Dekl.

    TcpConnectionType			_tcpConnectionType;
    TcpConnectionState			_tcpConnectionState;
    


  • TcpConnectionType::value_type _tcpConnectionType;
    


  • Tut mir Leid, dass ich mich erst so spät melde. War bis eben arbeiten.

    theta schrieb:

    TcpConnectionType::value_type _tcpConnectionType;
    

    Dann müsste ich doch diese Variante nehmen, oder?

    struct TcpConnectionType
    {
        enum value_type
        {
            // ....
        };
    };
    

    Was mache ich denn gegen die Warnung "warning: scoped enums only available with -std=c++0x or -std=gnu++0x" und den Fehler "error: expected primary-expression before '.' token", wenn ich es mit enum class {}; machen möchte?
    Ich persönlich finde einfach, dass es verwirrend(er) aussieht, wenn die Membervariable vom Typen TcpConnectionType::value_type ist.



  • DerCoder schrieb:

    Mit Code::Blocks wills auch nicht so ganz klappen:

    Die scoped enums (enum class TcpConnectionType...) erzeugen eine Warnung. Das ist zwar nicht schlimm, stört mich aber!
    'warning: scoped enums only available with -std=c++0x or -std=gnu++0x'

    Du musst in den Compilereinstellungen Den Standard auf C++0x setzen.



  • Danke! Genau was ich gesucht habe 🙂


Anmelden zum Antworten