friend & espaces de nommage
Hello,
J'ai défini un opérateur binaire * comme suit (il ne fait pas grand chose pour l'instant, j'en suis conscient) :
Code:
1 2 3 4 5 6 7 8 9 10
|
template <class T1, template<class> class StorageT1,
class T2, template<class> class StorageT2>
Matrix<T1, StorageT1>
operator*(const Matrix<T1, StorageT1>& matrix1, const Matrix<T2, StorageT2>& matrix2)
{
Matrix<T1, StorageT1> outMatrix(matrix1.nbRows, matrix2.nbColumns);
return outMatrix;
} |
Lorsque je crée 3 matrices (qui sont accessoirement exactement du même type), et que je fais :
Code:
matrice3 = matrice1* matrice2;
J'obtiens l'erreur :
Code:
ambiguous overload for operator*