C ++: deklaracja przyjaciela „deklaruje funkcję inną niż szablon
Mam problem z przeciążeniem<<
operator strumienia i nie znajduję rozwiązania:
template<class T, unsigned int TN>
class NVector
{
inline friend std::ostream& operator<< (
std::ostream &lhs, const NVector<T, TN> &rhs);
};
template<class T, unsigned int TN>
inline std::ostream& NVector<T, TN>::operator<<(
std::ostream &lhs, const NVector<T, TN> &rhs)
{
/* SOMETHING */
return lhs;
};
Wyświetla następujący komunikat o błędzie:
ostrzeżenie: deklaracja przyjaciela „std :: ostream & operator << (std :: ostream &, const NVector &)” deklaruje funkcję inną niż szablon [-Nie-szablon-przyjaciel]
błąd: „std :: ostream & NVector :: operator << (std :: ostream &, const NVector &)” musi przyjąć dokładnie jeden argument
Jak rozwiązać ten problem?
Dziękuję Ci bardzo.