在第一个函数调用中,我通过引用发送矩阵传递.不是第二种方式一样吗?我认为矩阵默认通过引用传递.
这是第一种情况:
phi= new double[15]; //phi is a dynamically allocated array
function(double *phi) //calls phi with what SHOULD be default pass by reference
Run Code Online (Sandbox Code Playgroud)
第二种情况:
function(double *&phi) //calls phi with pass by reference?
Run Code Online (Sandbox Code Playgroud)
两者之间应该没有区别,对吧?
我问的原因是因为我忽略了'&'符号并尝试在动态分配它的函数之外为phi赋值时,我的代码段出错了.