Matlab中的提供的匿名函数主要是方便定义一些短小的程序段,这有点类似于c语言的宏定义和内联函数。关于匿名函数Matab的文档或网上资料都比较好,这里只说一下,当含有多条语句时如何处理。
首先我们来看看只有一条语句的匿名函数吧:
>> f=@(x,y) x*x+y*y
f =
@(x,y)x*x+y*y
>> a=f(4,5)
a =
41
当匿名函数的程序段含有多条语句时,应该使用中括号[ ]把这些语句括起来,是的就是这样操作就行,来一个简单示例:
clc;
clear;
close all;
PlotSin=@(x,y) [figure; plot(x,y,'r -*');title('Sin(x)');];%要用中括号括起来
x=-pi:0.05:pi;
y=sin(x);
PlotSin(x,y);%画一条正弦曲线
运行结果图我就不贴了。看到没有,匿名函数使程序看起来比较紧凑。