Ah excuse-moi j'avais pas vu la liste Code pour changer le langage
Bon, là tu as touché un point important je pense, car si je déclare win dans mon main et que j'appelle simplement draw dans la boucle, ça fonctionne...
Je crois que c'est la std::list<Win> qui fonctionne pas comme je le veux... est-ce que vous pouvez me dire si ce code est correct (cette classe a un attribut std::list<Win> windows;)
void SFGUI::draw(){//On fait le tour de la liste pour dessiner toutes les fenêtres
for(list<Win>::iterator it = windows.begin(); it != windows.end(); it++){
(*it).draw();
}
}
void SFGUI::addWindow(){//on ajoute une fenêtre à la liste
windows.push_back(Win(app, 0, 0, 400, 300, false));
}
EDIT
J'ai touché juste !
Si je fais :
void SFGUI::addWindow(){//on ajoute une fenêtre à la liste
Win *win = new Win(app, 0, 0, 400, 300, false);
windows.push_back(win);
}
Ça fonctionne ! (bien sûr avec quelques changement comme des . pour des -> et std::list<Win*>...)
Maintenant, est-ce qu'il est possible d'écrire les deux lignes en une ?
Merci et bonne journée !