3. 其他例子2
Matlab有非常多的内嵌函数和工具箱函数用到了varargin。比如最常见的plot函数,除了x,y是数据意外,剩下的都需指定 属性名称(PropertyName)及其 属性值(PropertyValue)。例如:
x = -pi:pi/10:pi;
y = tan(sin(x)) -sin(tan(x));
Plot(x,y,'--rs','LineWidth',2,'MarkerEdgeColor','k',…
'MarkerFaceColor','g','MarkerSize',10);
当函数形参过多的时候,使用varargin定义函数形参的形式是非常必要的。但是帮助文件言之不详,而且普通的调用方法无法实现报错功能。在查阅众多内嵌函数后,这里给大家以一个例子说明各种数据类型:字符串、数值、变量的用法。
本文最有价值的在于两个内嵌函数(help都help不到哦)的使用:
internal.stats.parseArgs internal.stats.getParamVal
对每个属性赋值,若调用lrh函数时没有添加某个属性,则自动为默认值这个函数的意义就在于不需要对着varargin元胞一个一个对比、赋值了。报错功能:凡是属性值包含字符串的属性,都需要用此函数检查是否用户输入的属性值不包含在属性全部属性值中。
函数调用脚本
X=1:20;
Y=60:-1:41;
result=lrh(x,y,'Algorithm','+','U',4,'Sqornot