geogeoLe 22/05/2008 à 16:07
J'utilise Qt est franchement c'est un bonheur. J'ai jamais vu une bibliothèque aussi performante et facile à utiliser en C++.
Pour l'histoire des conteneurs si on travail avec de cette façon:
QList<Cell*> on ajoute des pointeurs dont si on veut une copie il faut explicitement appellée une méthode clone genre:
MyList << MyCell->clone();
Dans le cas d'un QList<Cell> l'ajout d'un élément entraine l'appel du constructeur par copie de ta classe Cell.
Soit Cell(const Cell& cell) donc si elle n'est pas correctement implémentée tu n'auras pas une vraie copie dans ta liste.
Enfin, si tu copies ton objet qui contient une liste tu dois naturellement développer le constructeur par copie qui recopie la liste. Sinon le constructeur par défaut de QList<T> sera utilisé. Et enfin pour ne pas se prendre la tête avec la destruction d'une liste... On préfère utiliser un QList<std::auto_ptr<Cell> > par exemple.