間違い間違い。すみません。

template< class X > class Matrix;
template<class X> Matrix<X> & Func( Matrix<X> &);

template<typename X> class Matrix{
friend Matrix<X> & Func<X>( Matrix<X> &);
Matrix<X> & Func(void);
};