surcharge d'opérateurs et performances
Salut,
J'ai créé une classe de vecteur template suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| template <class type = int>
class Vecteur3D
{
private:
type x;
type y;
type z;
public:
Vecteur3D();
Vecteur3D( type x_ini , type y_ini , type z_ini );
Vecteur3D<type>& operator =(const Vecteur3D&);
Vecteur3D<type> operator +(const Vecteur3D&);
}; |
Je surcharge donc les opérateurs "+" et "=" avec le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| template <class type>
Vecteur3D<type>& Vecteur3D<type>::operator =(const Vecteur3D &vecteur)
{
x = vecteur.x;
y = vecteur.y;
z = vecteur.z;
return *this;
}
template <class type>
Vecteur3D<type> Vecteur3D<type>::operator +(const Vecteur3D &vecteur)
{
Vecteur3D resultat;
resultat.x = x + vecteur.x;
resultat.y = y + vecteur.y;
resultat.z = z + vecteur.z;
return resultat;
} |
Tout marche bien cependant je vais être amené à utiliser souvent ces opérateurs c'est pourquoi je voudrais savoir si selon vous il est possible de faire ces surcharges de telle manière que ce soit plus performant?
merci d'avance
:tagcode: :merci: