主要内容

使用函数句柄调用局部函数

这个例子展示了如何创建局部函数句柄。如果一个函数返回局部函数句柄,你可以在main函数之外调用局部函数。这种方法允许您在一个文件中有多个可调用的函数。

在文件中创建以下函数,ellipseVals.m,在你的工作文件夹中。该函数返回一个带有局部函数句柄的结构体。

The MathWorks, Inc.版权所有函数fh =椭圆专注= @computeFocus;跳频。离心率= @computeEccentricity;跳频。面积= @computeArea;结束函数f = sqrt(a^2-b^2);结束函数f = computeFocus(a,b);e = f / a;结束函数ae = computeArea(a,b) ae = pi*a*b;结束

调用函数获取结构体局部函数句柄的。

h = ellipseVals
h = struct with字段:focus: @computeFocus偏心量:@ compute偏心量area: @computeArea

使用函数句柄调用局部函数来计算椭圆的面积。

h.area (3,1)
ans = 9.4248

或者,您可以使用localfunctions函数自动从所有局部函数创建函数句柄的单元格数组。如果您希望添加、删除或修改局部函数的名称,则此方法非常方便。

另请参阅

相关的例子

更多关于