[STL]Problème itérateur avec list
Hello,
Je débute avec les conteneurs et mon compilateur me met une floppée d'erreurs dans cette fonction:
Code:
1 2 3 4 5 6 7 8 9 10
|
// Dessine la liste des briques
void DrawBricks(SDL_Surface* MainScreen)
{
list<CBrick*>::iterator i;
for(i = m_brickList.begin(); i != m_brickList.end(); i++)
{
SDL_FillRect(MainScreen, i->m_Position, i->m_Color);
}
} |
La liste est déclarée comme ceci:
Code:
list <CBrick*> m_brickList;
Et pourtant j'ai aussi un code avec itérateur pour détruire les objets et là il n'y a pas d'erreurs :(:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
CLevel::~CLevel()
{
// Destruction de la liste
list<CBrick*>::iterator i;
for(i = m_brickList.begin(); i != m_brickList.end(); i++)
{
delete *i;
cout << "Brique effacée de la mémoire" << endl;
}
m_brickList.erase(m_brickList.begin(), m_brickList.end() );
} |
Ce n'est pas comme ça qu'on utilise l'itérateur? Je n'ai pas trouvé d'exemple similaire dans la FAQ ou ailleurs...