匿名函数

Posted babystep

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了匿名函数相关的知识,希望对你有一定的参考价值。

匿名函数

  •   [email protected](arglist)anonymous_function, 如:[email protected](x,y)x+y, 则 f(1,2)=3。注意匿名函数后面的函数表达式不需要引号。
  •   对于数组,注意匿名函数中(.)运算符的应用, 如: [email protected](x,y) x.^2+y.^2
  •   匿名函数可以使用前面定义过的变量
c=1;
f[email protected](x,y)x.^2+y.^2+c;
f([1 2],[3 4])
ans=
11    21

但是需要注意的是,定义过的变量如果发生变化,匿名函数是不会改变所使用的变量的,例如上面例子中如果改变c,c=3。此时再执行匿名函数f([1 2],[3 4]),结果不会改变,仍然是 11 21

  •   使用匿名函数给符号表达式赋值
>> syms x z
>> syms x y z
>> z=x^2+y^2
z =
x^2 + y^2
>> f=eval([@(x,y),vectorize(z)])
f =
  包含以下值的 function_handle:
    @(x,y)x.^2+y.^2
>> f(1,3)
ans =
    10

 

以上是关于匿名函数的主要内容,如果未能解决你的问题,请参考以下文章

repost对JAVASCRIPT匿名函数的理解(透彻版)

如何启动匿名线程类

匿名函数

匿名函数的用法

使用匿名函数瓶颈提高 matlab 代码的性能

函数式编程——匿名函数