Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
具有一个具有四个非常大的矩阵的结构,这些矩阵对应于灰度图像。根据函数的输入,我想将这四个矩阵之一存储在变量中。但是,由于这些矩阵很大,因此我不想创建它们的副本。
Matlab中有什么类似于C ++中引用的概念吗?或者换句话说:是否可以有两个指向同一矩阵的变量? 回答: Matlab对变量使用“写入时的惰性副本” 。这意味着,如果将数组(或所有数组)传递给函数,除非您写入数组,否则它们不会重复。换句话说,您可能不需要做您想做的事。 例如,如果将图像存储在具有imgStruct字段到fourthImage字段的firstImage结构中,并且将imgStruct.fourthImage作为函数的输入传递,则即使该函数内部调用了inputImage ,该数组也不会重复。 如果您打算写入图像,则可以创建一个句柄类来存储图像数据,该句柄类通过引用传递(因此,如果您在函数内部修改图像,它也会在您的基本工作空间中进行修改)。 更多&回答... |
![]() |
![]() |