les classe std::vector de la STL et cycle de vie des objets - C++ - Programmation
Marsh Posté le 06-02-2004 à 09:48:56
La solution est simple en fait :
Code :
|
Ceci car vector<MaClasse> v est un vecteur de MaClasse et non pas un vecteur de MaClasse*. Donc truc est recopié dans v.
Marsh Posté le 06-02-2004 à 09:53:48
Kristoph a écrit : La solution est simple en fait :
|
Donc c'est encore plus simple de ne pas construire dynamiquement mon objet en fait :
Code :
|
comme ça, ça roule alors !?
Marsh Posté le 06-02-2004 à 09:57:52
Kristoph a écrit : La solution est simple en fait :
|
tiens t'arrive a faire rentrer un MaClasse * dans un MaClasse toi ?
Marsh Posté le 06-02-2004 à 10:03:56
Autrement il y a:
Code :
|
Et tout sera libéré à la destruction de v
Marsh Posté le 06-02-2004 à 10:29:28
chrisbk a écrit : |
Non, on va dire que c'est une typo
Marsh Posté le 06-02-2004 à 11:20:25
Reply
Marsh Posté le 06-02-2004 à 09:32:49
Je n'arrive pas à trouver ça dans les diverses docs :
le bout de code suivant est il ok (sans fuite mémoire) ?
pas de destruction implicite de l'instance pointée par "truc". vector sera sans doute vidé à sa destruction (appel à la méthode "clear()" ). Ceci prendra t il en change la destruction de l'instance référencée, ou est ce que ça supprime uniquement la référence ?
Je devrais plutôt faire le truc suivant ?
---------------
Les Vers Solitaires, on aime ... ou pas !