如何从另一个m文件访问m文件的矩阵?

时间:2014-05-15 03:25:18

标签: matlab

假设矩阵是A,它位于m文件new1.m中。现在我想将此矩阵访问另一个m文件new2.m。怎么办呢?

1 个答案:

答案 0 :(得分:1)

你的问题有点非特异性,但我会尝试回答。 有几种方法可以做到这一点,

假设您有一个名为' new1 的m文件(脚本)' (例如)A = rand(4)。您可以在 new2.m 中运行它,然后再使用A

new1;
B = 2*A;

请注意, new1 将返回所有其中分配的其他变量,从而充斥您的工作区。也许不是问题,但如果是这样,你可以用它来清除它们 clear var1 var2 var2等。

另一种方法是将 new1 转换为函数并返回(仅)A

function A = new1()

但是我猜这可能会破坏new1的其他目的。 在这种情况下,只有在使用特殊输入参数调用函数时才能返回A(例如' getA ')

function new1(varargin)
...
... % some code
...
if nargin && strcmp(varargin{1},'getA')
   assignin('caller','A',A);
end

new2 开始,只需调用该函数。

new1('getA');