STL List problem



  • was hat der hier für eon problem?
    ich verstehs nicht.

    struct sFoo
    {
        int f1;
        float f2;
    };
    
    std::list<sFoo*> Foos;
    
    for ( sFoo** iter = Foos.begin(); iter != Foods.end(); iter++  ) // fehler hier
    {
         //...
    }
    

    Da sind 2 Fehler:

    error C2440: 'initializing' : 'class std::list<struct sFoo *,class std::allocator<struct sFoo *> >::iterator' kann nicht in 'struct sFoo ** ' konvertiert werden
            Kein benutzerdefinierter Konvertierungsoperator verfuegbar, der diese Konvertierung durchfuehren kann, oder der Operator kann nicht aufgerufen werden
    
    error C2679: Binaerer Operator '!=' : Kein Operator definiert, der einen rec  ::allocator<struct sFoo *> >::iterator' akzeptiert (oder k
    eine geeignete Konvertierung moeglich)
    


  • es heißt natürlich

    [cpp]
    for ( sFoo** iter = Foos.begin(); iter != Foos.end(); iter++ ) // fehler hier
    [/cpp]

    😉



  • die fehlermeldung

    class std::list<struct sFoo *,class std::allocator<struct sFoo *> >::iterator' kann nicht in 'struct sFoo ** ' konvertiert werden
    

    sagt es eigentlich eh

    std::list< sFoo* >::iterator ist der typ den dir Foos.begin() zurueckliefert
    
    for ( std::list< sFoo* >::iterator pos = Foos.begin(); 
          pos != Foods.end(); ++pos  ) 
    {
    
    }
    

    //Edit codetags (evilissimo)


Anmelden zum Antworten