Matlab函数句柄, 匿名函数 与 inline 函数
2009-05-13 10:33
411 查看
函数句柄变量不仅可以用来表示数值(如: 1, 0.2, -5), 用来表示字符串(如: 't', 'casino'), 也可以用来表示函数哦. 当然, 你也看到了前面我们提到的函数都是一个一个的文件, 直接塞到一个变量里面似乎太大, 不过我们可以'提纲挈领', 抓住函数的handle(句柄), 就可以.将函数句柄赋值给变量要用到@符号, 语法: 变量名=@函数名, 此处地函数名可以是当前Matlab中可以使用的任意函数 例如: mysin=@sin, 此后mysin就和sin同样地使用, mysin(pi)和sin(pi)的含义相同. 匿名函数这是函数句柄的一种高级用法, 这样产生的函数句柄变量不指向特定的函数, 而是一个函数表达式. 其语法:变量名=@(输入参数列表)运算表达式例如, 前面那个计算变量平方的函数可以简单地写为这个匿名函数:mysqr1=@(x)x.*x之后, 执行mysqr1(变量名), 即可计算该变量的平方, 注意, mysqr1属性是函数句柄变量, 而不是这个表达式; 还有要注意这个表达式不需要用单引号括起来.inline 函数inline函数不是函数句柄, 是另外一种类型, 它也可以用变量来表示函数, 用法也和一般函数, 函数句柄是一样的. 定义inline函数的语法:变量名=inline('函数表达式', '变量名1','变量名2', ... ,'变量名n')当然啦, 如果是常见变量名, 如x, y, 等, 后面那个变量名列表可以省略(不建议为了偷懒这么做, 因为容易引起混乱). inline语句得到的变量类型比较特别, 是'inline object'.举例依旧是计算变量的平方, 用inline的方法可以这么做: mysqr2=inline('x.*x','x'); 定义完mysqr2后, 可以用: mysqr2(3), 计算3的平方. |
相关文章推荐
- 【转载】MATLAB函数句柄和匿名函数
- MATLAB函数句柄(@),feval与内连函数(inline)(Z)
- matlab 函数句柄(function handle)
- Matlab中函数句柄@的作用及介绍
- 浅析MATLAB中的内联函数、匿名函数和函数函数
- matlab --- 函数句柄(函数指针)
- matlab中函数的句柄
- MATLAB 函数编写方法, 浅析MATLAB中的内联函数、匿名函数和函数函数
- Matlab中的函数句柄@
- Matlab中函数句柄@的作用及介绍
- matlab函数句柄介绍
- [初学笔记] matlab中 函数m文件创立,匿名函数的建立和调用
- [matlab]分块函数blkproc和inline函数介绍
- MATLAB句柄相关函数和代码示例(设置美化图表属性)
- matlab中函数的句柄是什么意思?有什么作用?
- matlab 中的内联函数、匿名函数和函数函数
- 如何将符号表达式转为函数句柄[Matlab]
- Matlab函数句柄调用图像K均值分类
- MATLAB句柄图形对象的创建函数与函数描述
- Matlab 函数进阶:使用匿名函数和内嵌函数处理多变量传递问题(Matlab 7.0以上)