kleines Iterator-Problem



  • Hallo

    leider geht das scheinbar nicht kein Ahnung warum aber er kennt hier den zuweisungsoperator einfach nicht! ebenso wie er den inkrementoperator nicht kennt!

    for (Iter = Vect.begin(); Iter != Vect.end(); Iter++) 
    { 
    // ... 
    }
    

    Hier kennt er weder den ++ - Operator noch den = - Operator....sehr setlsam ich glaube ich hab das schon gut 100mal so gemacht und hatte noch nie probs damit oO



  • Du brauchst einen const_iterator.



  • IrgendeinName schrieb:

    Was ist CardVector und CardIterator? Es liegt ja offensichtlich an diesen Klassen.

    der typedef dafür steht in der Klasse im public teil!



  • Kellerautomat schrieb:

    Du brauchst einen const_iterator.

    ändert leider auch nichts daran, dass die beiden operatoren nicht erkannt werden, aber danke für den Hinweis



  • Zeig doch mal Fehlermeldungen, dann kann man dir besser helfen.



  • Ratatosky schrieb:

    Hallo

    leider geht das scheinbar nicht kein Ahnung warum aber er kennt hier den zuweisungsoperator einfach nicht! ebenso wie er den inkrementoperator nicht kennt!

    for (Iter = Vect.begin(); Iter != Vect.end(); Iter++) 
    { 
    // ... 
    }
    

    Hier kennt er weder den ++ - Operator noch den = - Operator....sehr setlsam ich glaube ich hab das schon gut 100mal so gemacht und hatte noch nie probs damit oO

    Wo stehen die includes?



  • Kellerautomat schrieb:

    Zeig doch mal Fehlermeldungen, dann kann man dir besser helfen.

    Kein "="-Operator stimmt mit diesen Operanden überein.
    Kein "++"-Operator stimmt mit diesen Operanden überein.



  • IrgendeinName schrieb:

    Ratatosky schrieb:

    Hallo

    leider geht das scheinbar nicht kein Ahnung warum aber er kennt hier den zuweisungsoperator einfach nicht! ebenso wie er den inkrementoperator nicht kennt!

    for (Iter = Vect.begin(); Iter != Vect.end(); Iter++) 
    { 
    // ... 
    }
    

    Hier kennt er weder den ++ - Operator noch den = - Operator....sehr setlsam ich glaube ich hab das schon gut 100mal so gemacht und hatte noch nie probs damit oO

    Wo stehen die includes?

    Sowohl im header als auch im Cpp file atm



  • Ratatosky schrieb:

    Kellerautomat schrieb:

    Zeig doch mal Fehlermeldungen, dann kann man dir besser helfen.

    Kein "="-Operator stimmt mit diesen Operanden überein.
    Kein "++"-Operator stimmt mit diesen Operanden überein.

    typedef std::vector<CardInformation> CardVector; 
        typedef CardVector::iterator CardIterator;
    

    Schreib mal statt Zeile 2

    typedef std::vector<CardInformation>::iterator CardIterator;
    


  • Sone schrieb:

    Ratatosky schrieb:

    Kellerautomat schrieb:

    Zeig doch mal Fehlermeldungen, dann kann man dir besser helfen.

    Kein "="-Operator stimmt mit diesen Operanden überein.
    Kein "++"-Operator stimmt mit diesen Operanden überein.

    typedef std::vector<CardInformation> CardVector; 
        typedef CardVector::iterator CardIterator;
    

    Schreib mal statt Zeile 2

    typedef std::vector<CardInformation>::iterator CardIterator;
    

    Gute Idee, ändert aber leider ebenfalls nichts an den beiden Fehlermeldungen, der Iterator wird nach wie vor nicht als ein iterator auf einen CardVector wahrgenommen wie es scheint...



  • Naja print() ist const, aber dann weist du ein Member zu ( Iter = Vect.begin() )...
    Das kann ja nicht gut gehen...

    Nimm doch einfach einen const_iterator, den Du in der for schleife definierst.



  • Furble Wurble schrieb:

    Naja print() ist const, aber dann weist du ein Member zu ( Iter = Vect.begin() )...
    Das kann ja nicht gut gehen...

    Nimm doch einfach einen const_iterator, den Du in der for schleife definierst.

    Ah danke stimmt jetzt funktionierts!
    An alle die Mitgeholfen haben, vielen Dank! 😉 Problem gelöst



  • Furble Wurble schrieb:

    Naja print() ist const, aber dann weist du ein Member zu ( Iter = Vect.begin() )...
    Das kann ja nicht gut gehen...

    Nimm doch einfach einen const_iterator, den Du in der for schleife definierst.

    Mist 😡 Das wollte ich genau in diesem Moment schreiben.



  • IrgendeinName schrieb:

    Furble Wurble schrieb:

    Naja print() ist const, aber dann weist du ein Member zu ( Iter = Vect.begin() )...
    Das kann ja nicht gut gehen...

    Nimm doch einfach einen const_iterator, den Du in der for schleife definierst.

    Mist 😡 Das wollte ich genau in diesem Moment schreiben.

    Brauchst du den Ruhm, das Problem geloest zu haben?

    Ratatosky schrieb:

    Sone schrieb:

    Ratatosky schrieb:

    Kellerautomat schrieb:

    Zeig doch mal Fehlermeldungen, dann kann man dir besser helfen.

    Kein "="-Operator stimmt mit diesen Operanden überein.
    Kein "++"-Operator stimmt mit diesen Operanden überein.

    typedef std::vector<CardInformation> CardVector; 
        typedef CardVector::iterator CardIterator;
    

    Schreib mal statt Zeile 2

    typedef std::vector<CardInformation>::iterator CardIterator;
    

    Gute Idee, ändert aber leider ebenfalls nichts an den beiden Fehlermeldungen

    Sollte es auch nicht 😃


Anmelden zum Antworten