MATLAB 的函数句柄

  MATLAB 的函数句柄:

1、何为函数句柄?

  函数句柄也是MATLAB中的一种常见的数据类型,

  它的地位类似于其它计算机语言里的函数对象(Javascript,Python),函数指针(C++),或者函数引用(Perl)。

  它的作用是将一个函数封装成一个变量,使其能够像其它变量一样在程序的不同部分传递。。引入函数句柄可使函数调用变得更加灵活方便,极大地提高了函数调用的速度和效率。MATLAB中函数句柄的使用使得函数也可以成为输入变量,并且能很方便地调用,提高函数的可用性和独立性。

2、函数句柄的创建:

方式①:直接加@

    语法:@函数名fun1 = @sin;

方式②:str2func函数

    语法:str2fun('函数名')

    fun2 = str2func('cos');

方式③:str2func函数

    语法:@(参数列表)单行表达式
    fun3 = @(x, y)x.^2 + y.^2; 

 

 

 3、函数句柄的调用:

假定一个函数的调用格式为:[y1,y2,...,yn] = FunctionName(x1,x2,...,xm)

该函数通过以下方式构建函数句柄:Hfunction = @FunctionName

则通过函数句柄实现函数运算的调用格式是:直接调用 Hfunction (x1,x2,...,xm) 或者 [y1,y2,...,yn]=feval (Hfunction,x1,x2,...,xm)

 例如:

 

posted on 2018-07-03 11:14  CuriousZero  阅读(30289)  评论(0编辑  收藏  举报

导航