Bonsoir,

J'ai crée une classe vecteur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
class Vecteur
{
public:
	Vecteur(double a=0., double b=0., double c=0.){x=a;y=b;z=c;} // constructeur par défaut
	Vecteur operator +( const Vecteur & );
	Vecteur& operator *( double ) ;
	void affiche() { cout<<"("<<x<<","<<y<<","<<z<<")"<<endl;}
private:
double x,y,z; // coordonnees
};
Seulement j'ai un problème pour surcharger l'opérateur *, qui sera ici la multiplication d'un vecteur par un double.

J'ai comme fonction :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Vecteur& Vecteur::operator * ( double a)
{
	x=a*x;
	y=a*y;
	z=z*a;
	return *this;
}
Seulement, avec ce code, je peux seulement multiplier à droite par un double, et pas à gauche :

Comment faire pour pouvoir multiplier par un double à la fois à droite et à gauche ?

Merci beaucoup.