匿名函数

2025年3月17日 | 阅读 3 分钟

匿名函数是一个简单的(单行)用户定义函数,它在不创建单独的函数文件(M 文件)的情况下定义。 匿名函数可以在命令窗口、脚本文件或用户定义函数的内部定义。

通过键入以下命令生成一个匿名函数

Anonymous Function

其中 f 是函数句柄。 输入列表 可以包含单个变量或用逗号分隔的多个变量。 创建函数后,我们可以使用其句柄来计算函数或将其作为参数传递给其他函数。

例如,创建一个匿名函数,用于评估并返回圆的面积

函数句柄变量名是 cirarea。 有一个输入参数,radius。 函数体是表达式 pi * radius .ˆ 2. 使用 .ˆ 数组函数,以便可以将半径向量传递给函数。

然后使用句柄调用该函数并将参数传递给它。 使用函数句柄的函数调用看起来就像使用函数名称的函数调用。

可以使用 class 函数找到 cirarea 的类型

与保存在代码文件中的函数不同,如果未将任何参数传递给匿名函数,则括号必须位于函数定义和函数调用中。 例如,以下是打印带有两位小数的随机实数以及对该函数的调用的匿名函数

键入函数句柄的名称将显示其内容,即函数定义。

可以将匿名函数存储到 MAT 文件中,然后在需要时加载。

自定义匿名函数

一个独立变量的匿名函数示例

函数:Anonymous Function 可以作为标量 x 的匿名函数在命令窗口中定义为

如果未在末尾键入分号,MATLAB 将显示该函数。 然后可以将该函数用于不同的 x 值

如果 x 应该是一个数组,并且为每个元素计算该函数,则必须修改该函数以进行元素计算。

具有各种独立变量的匿名函数示例

函数 f (x, y) = 2x2-4xy + y2 可以定义为匿名函数,方法是

然后,匿名函数可用于 x 和 y 的特定值。 例如,键入 HA (2, 3) 给出

参数化匿名函数

工作区中的变量可以在匿名函数的定义中使用。 这称为参数化。 例如,要在匿名函数中使用常量 c = 2,

f (3) 使用变量 c 作为参数与提供的 x 相乘。 请注意,如果 c 的值此时设置为其他值,那么将调用 f (3),结果将不会有所不同。 c 的值是创建匿名函数时的值


下一主题MATLAB 绘图