Bonjour,
j'essaie de coder une classe Array pour les matrices de grandes tailles, qui utilisent une bibliothèque externe. Les objets de cette bibliothèqe sont des matrices mat.
Dans l'operator+ classique de ma classe array, je fais une copie temporaire de l'objet via le constructeur copie puis je renvoie cet objet temporaire. Pour les systèmes de très grandes tailles, cela n'est pas possible, car la copie intermédiaire me diminuerait drastiquement les perfs.
Quelqu'un aurait-il donc déjà coder cet opérateur sans passer par une copie temporaire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 inline Array Array::operator+(const Array& obj) { Array* temp = new Array(*this); return (*temp+=obj); }
Je vous remercie par avance.
cdt.
Partager