我试图找到一种方法将1xn数组传递给函数处理程序,其中n是函数中变量的数量,所以让我假设我这样声明一个处理程序:
U = @(x, y) x^2 + 2*y^2
并插入:
U(1, 2)
ans =
9
我有什么方法可以做类似的事情吗?
a = [1, 2]
U(a)
ans =
9
答案 0 :(得分:3)
是的,你可以;
U = @(x, y) x^2 + 2*y^2;
a = {1, 2};
U(a{:})
当您展开单元格{:}
的内容时,它会扩展为单元格中存储的单独值。这与myMatrix(...)
或myCell(...)
不同,{{1}}或{{1}}都生成原始集的子集(无论是单元格还是矩阵)。