warum ?... verstehe ich nicht....



  • class CBitStream : public CStringFunctions
    {
    private:
    CBitHead m_bitHead;
    uchar * m_bitStream;

    +++ uchar buffer_w [3]= {2,3,4}; +++ // geht nicht...

    uchar m_bitValue;
    long m_nCount;

    folgende Fehlermeldungen:

    error C2059: Syntaxfehler: '{'
    error C2334: Unerwartete(s) Token vor '{'; sichtbarer Funktionstext wird übersprungen
    error C2059: Syntaxfehler: '{'
    error C2334: Unerwartete(s) Token vor '{'; sichtbarer Funktionstext wird übersprungen

    **************************************************************************
    Vielen Dank für die schnelle Hilfe... bin verzweifelt...
    p.s.: uchar habe ich schon als unsigned char definiert...



  • Du kannst Array-Member nicht so initialisieren, weder in der Klassendefinition noch anderswo.



  • habe ich mir auch schon gedacht...

    ich darf also in einer klassendefinition keine werte setzen, nur den typen bereitstellen... verstehe ich das richtig?



  • Ja, das andere ist dann die Deklaration.



  • Die zugehörigen Werte kannst du im Konstruktor einsetzen. (und da die Initialisierungsliste nicht mit Arrays zusammenarbeitet, bleibt dir da nur die Einzelzuweisung im Ctor-Rumpf)


Anmelden zum Antworten