我有几个大矩阵应该在迭代算法中多次传递给不同的函数。如何避免不必要地将变量复制到函数中以加快程序速度?有没有办法将这些矩阵分组到一个结构或类中并通过引用或指针传递它们?
a=zeros(1000,1000);
b=zeros(1000,1000);
d=myfunction(a,b);
a=myfunction2(b,d);
....
谢谢。
更新:正如我在评论中看到的那样,我应该提供更多细节。我有几个大矩阵。它们中很少有在程序中保持不变,而另一些则在每次迭代时在每个函数中发生变化。因此,如果我按值传递这些矩阵,Matlab 会对其进行复制,更改值并再次将它们复制为函数的输出,然后它们超出范围并被销毁,并且在每次迭代中,所有这些不必要的复制都会使程序非常慢。如果我用 C++ 对其进行编程,我将对这些矩阵使用面向对象的编程,并将它们作为对函数的引用传递,但我不知道这在 MATLAB 中是否可行。