主要内容

function_handle.

处理功能

描述

函数句柄是matlab®表示函数的数据类型。典型使用功能处理是将函数传递给另一个功能。例如,您可以使用函数把手作为输入参数,以评估一系列值的数学表达式。功能手柄的其他典型用途包括:

  • 指定回调函数(例如,响应UI事件或与数据采集硬件交互的回调)。

  • 构建函数的函数,定义了内联而不是存储在程序文件(匿名函数中)。

创建

使用函数句柄使用@操作员。功能句柄可以表示命名或匿名函数。

  • 命名功能处理表示现有程序文件中的函数,包括作为MATLAB的一部分的函数和您使用的函数功能关键词。要为命名函数创建句柄,请在函数名称之前@

    例如,创建一个句柄功能,然后使用FMINBND找到价值X最小化罪(X)在0到0到 2 π

    f = @sin;m = fminbnd(f,0,2 * pi);
  • 匿名功能处理(通常称为匿名功能)表示返回一个输出的单个内联可执行表达式。要定义匿名函数,请在括号中括在括号中@操作员,然后指定可执行表达式。

    例如,创建一个匿名函数的句柄,该函数评估表达式X2-y2

    f = @(x,y)(x。^ 2  -  ^ ^ 2);

    匿名功能可以接受多个输入,但只返回一个输出。

例子

全部收缩

在当前文件夹中的文件中,创建名为的函数Cubicpoly.接受输入以评估立方多项式的输入 X 3. + X 2 + X + 1

功能y = cubicpoly(x)y = x。^ 3 + x。^ 2 + x + 1;结尾

找到积分的Cubicpoly.0.1,把句柄传递给Cubicpoly.功能不可缺少的

q =积分(@ cubicpoly,0,1)
q = 2.0833.

创建处理F匿名函数评估立方多项式 X 3. + X 2 + X + 1 对于给定的价值 X

f = @(x)x。^ 3 + x。^ 2 + x + 1;

找到来自的匿名功能的积分0.1,把它的手柄传递给不可缺少的

q =积分(f (0, 1)
q = 2.0833.

扩展能力

在R2006A之前介绍