【编程细节】函数形参为二维数组或指针时,如何调用

标签:
it |
分类: C.plusplus |
// 原始函数
int fun1(int n, double *A, double *evec, double *eval);
// 封装函数
template void fun2(double M[n][n],double
evec[n][n],double ev[n])
{
fun1(n,M[0],evec[0],ev);
}
main()函数调用方法:
double n_M[4][4],evec[4][4],ev[4];
fun2<4>(n_M,evec,ev);
【2】
double m_s; // 成员变量;
double m_R[3][3]; double m_T[3];
void absoluteOrientation_drive( double& S,
double R[3][3] ,double T[3] )
{
...
S=abs.m_s;
memcpy(R,(abs.m_R),sizeof(double)*9);
}
参考资料:
一、先说说数组名,数组名代表数组第一个元素的指针。
(参考资料原文:C++二维数组和指针的关系 http://www.softfz.com/czx/5981/)