template <class T> class CMatrix{ matrix<T>mat_; public: CMatrix(const identity_matrix<T>& m) { mat_ = m; } static CMatrix<T> eye(int size) { return identity_matrix<T>(size); } }; template<class T> void operator << (ostream& os, CMatrix<T>& m)//////////// line A {} int main(){ CMatrix<double> I = CMatrix<double>::eye(5); cout< ??????:eh0dec$ih5$1@sea.gmane.org...
"YYW"
wrote why the codes below is wrong in g++ 3.4.2? an error occurs in the line: cout<
#include using namespace boost::numeric::ublas; using namespace std;
template <class T> class CMatrix { matrix<T>mat_;
public: CMatrix(const identity_matrix<T>& m) { mat_ = m; } static CMatrix<T> eye(int size) { return identity_matrix<T>(size); }
template <class T_> friend ostream& operator << (ostream& os, CMatrix
& m); }; template<class T_> ostream& operator << (ostream& os, CMatrix
& m) Try this:
ostream& operator << (ostream& os, const CMatrix
& m) Regards, Arkadiy