jmtafam a écrit :
Je débute en C++ et dans le cadre d'un projet sur les opérations sur les matrices, je voudrai créer un opérateur qui fonctionne entre deux classes : une classe complexe et une classe matrice (l'idée étant tout simplement de multiplier la matrice par un scalaire, mais j'aimerai pouvoir utiliser dans le main l'opérateur * entre le complexe et la matrice).
|
Je suppose que la classe matrice est une classe template (?)
Dans ce cas, il faut implémenter la définition de la surcharge de l'operateur * suivante :
template <class T>
matrix<T> operator*( T lambda, matrix<T> const& m )
{ //...
}
et par symétrie celle la aussi:
template <class T>
matrix<T> operator*( matrix<T> const& m, T lambda )
{ //...
}
l'implémentation pourra se servir de l'operator*= membre.