Voici une partie de ma source :
class cdata
{
private:
vector<cdata> _data;
public:
string donnee;
void ajouter_data(cdata dd) { _data.push_back(dd); };
cdata operator[](int i) { return _data[i]; };
.........
};
main()
{
cdata obj1, obj2, obj3;
obj1.ajouter_data(obj2);
obj1[0].ajouter_data(obj3);
}
Sur le post, je n'ai pas mis les contrôle d'erreur sur la méthode.
Mon code ne génére aucune erreur. Par contre du fait que la méthode
operator[] me créer un objet temporaire, mon
obj1 n'a subit aucune modification dans le code
obj1[0].ajouter_data(obj3)
Qu'est ce que je devrai faire pour que l'ajout de l'
obj3 se réalise dans l'
obj1 ?