Salut,
Au sujet des subtilités sur l'utilisation des shared_ptr, je souhaiterais comprendre ce qu'il se passe (ce qui ne fonctionne pas) dans le cadre suivant :
1. Dans une structure de données, "A" je déclare un membre de type vector<double> v;
2. Dans l'écriture de mon code, je déclare et utilise un vector<boost::shared_ptr<A>> vpA;
3. Je dimensionne dans mon code toutes les structures de données déclarées : n éléments pour v, m éléments pour vpA)
4. Je dois accéder dans mon exécution à l'élément : vpA[i]->v[j];
Ca se passe mal...
4a. lorsque m=1, pas de problème d'exécution mais des résultats étranges (ça dépend de mes exécutions, comme si ce n'était pas le même emplacement mémoire qui était lu)
4b. lorsque m=2 (>=2 ?) plantage du code !
Quelqu'un peut-il me donner l'explication de ce qu'il se passe ? La solution ?
Merci bcp !
Partager