Matlab:访问函数句柄中的隐藏参数

时间:2014-11-20 15:15:37

标签: matlab function anonymous

当在Matlab中定义匿名函数时,它在内部存储从工作空间使用的变量。 例如

A = 2

f = @(x)x ^ A

清除A

现在,如果你打电话给f(2),你会得到结果4。 如果您只是打印f或将其转换为字符串,您将获得

@(X)的x ^ A

我的问题是如何访问函数中的内部变量 A

1 个答案:

答案 0 :(得分:4)

一种方法是使用functions命令。

fa = functions(f);

输出是一个包含workspace的结构,一个包含包含变量的结构的单元数组,在这种情况下:

ws = fa.workspace{1};
ws.A   % returns "2"