我一定错过了一些非常简单的东西,因为这看起来不应该这么难。
这段代码是正确的:
clear all
whatever = @(x) deal(max(x), size(x));
input = randn(1,1000);
[a b] = whatever(input)
但是,我真正想做的是这样的:
clear all
whatever = @(x) deal(q = 3; q*max(x), size(x));
input = randn(1,1000);
[a b] = whatever(input)
为什么会中断?我不能在函数内部定义 q ??我想使用匿名函数的全部原因是我实际上可以在其中执行多行代码,然后返回答案。我想匿名函数的最后一条语句是返回的,但是如何在其中定义变量呢?我不想在定义匿名函数之前定义 q 。
谢谢。