Matlab:创建函数句柄
您可以为已命名函数和匿名函数创建函数句柄。您可以将多个函数句柄存储在数组中,保存并加载它们,方法与对任何其他变量一样。
什么是函数句柄?
函数句柄是一种存储指向函数的关联关系的 MATLAB® 数据类型。间接调用函数使您在调用该函数时无需考虑调用位置。函数句柄的典型用法包括:
将一个函数传递到另一个函数(通常称为复合函数)。例如,将函数传递到 integral 和 fzero 等积分和优化函数。
指定回调函数(例如,响应 UI 事件或与数据采集硬件交互的回调)。
构造以内联方式定义而非存储在程序文件(匿名函数)中的函数的句柄。
从主函数外调用局部函数。
您可以使用 isa(h,‘function_handle’) 来查看变量 h 是否为函数句柄。
创建函数句柄
通过在函数名称前添加一个 @ 符号来为函数创建句柄。例如,如果您有一个名为 myfunction 的函数,请按如下所示创建一个名为 f 的句柄:
f = @myfunction;
使用句柄调用函数的方式与直接调用函数一样。例如,假设您有一个名为 computeSquare 的函数,该函数定义为:
function y = computeSquare(</