c++模版编程纳闷

c++模版编程困惑C/C++ codetemplateclass T,int nvoid CMatrixT,n::SubMetrix(int line, int column,C

c++模版编程困惑

C/C++ code
template<class T,int n>void CMatrix<T,n>::SubMetrix(int line, int column,CMatrix<T,3>& m) const{    assert(line>0&&line<=(n-2));    assert(column>0&&column<=(n-2));    for(int i=1;i<=9;++i)        m.ChangeValue(i,operator()(line+(i-1)/3,column+(i-1)%3));}

说明:CMatrix<T,n>是定义的一个n行n列的模版矩阵,上面的函数实现取子矩阵的功能
参数CMatrix<T,3>& m是取一个3X3的矩阵,可以实现
现在我想取一个任意阶的矩阵,第三个参数该如何定义呢?

[解决办法]
line和column是做什么的??
[解决办法]
line和column是做什么的??
[解决办法]
C/C++ code
template<class T,int n,int nSub>void CMatrix<T,n>::SubMetrix(int line, int column,CMatrix<T,nSub>& m) const
[解决办法]
模版有时不如Code Generation好用。