将多变量输出从函数保存到向量?

时间:2018-04-15 11:59:26

标签: matlab octave

我有一个返回多个值的函数:

function [a,b,c] = f()
  a = 1; b = 2; c = 3;
end

如何在不创建中间变量的情况下将输出保存到矢量中?示例如下所示:

> z = zeros(1,3);
> [a,b,c] = f();
> z(:) = [a,b,c];
> z
ans =

   1   2   3

我不必定义中间变量abc,但前提是我定义了一个额外的单元格数组:

> ce = cell(1, 3);
> [ce{:}] = f();
> z(:) = cell2mat(ce);
> z
ans =

   1   2   3

有没有更好的方法直接从z(:) = f()

0 个答案:

没有答案