图片缩略图

ParseAlgs:简化具有多个选项的函数的输入处理

version 1.2.0.1 (5.83 KB) by 马尔科姆林
用于解析作为名称-值对提供的函数参数,例如。“XLim”,[0 10],“YLim”,100年[0]

4.7k下载

更新2016年9月01日

查看许可协议

基于与优秀的“parse_pv_pairs”相同的思想,并类似于在R2007a中添加到MATLAB中的“inputParser”对象,该函数以任何顺序处理属性的名称和值,并将值赋给包含默认值的结构。
例如,在你的函数中,它有选项"StartTime"和
"StopOnError",创建一个默认值结构并将输入传递给parseargs:

|函数myfunction(变长度输入宗量)
| X.StartTime = 0;
| X.StopOnError = true;
|X = Parseargs(x,varargin {:})

如果用户指定输入:
| myfunction (StopOnError,假的,“开始时间”,5)
结构将相应地进行修改。

这个函数的目的是尽可能地减轻处理输入的繁琐和容易出错的任务,特别是考虑到应用程序开发(而不是快速脚本),在应用程序开发中健壮性是非常重要的。

为此,该函数强制执行一些规则,部分是为了减少调用者出错的机会,部分是为了避免用户编写额外的代码来强制执行这些规则:
1)属性名必须完整指定,并且区分大小写
2)不能更改属性的数据类型(除非属性最初是空的)
3)标量值必须保持标量
4)如果原始值是单元格数组,则必须包含字符串。新值必须是这些字符串之一,如果没有指定新值,则选择第一个字符串作为默认值。

引用作为

马尔科姆·伍德(2021)。ParseAlgs:简化具有多个选项的函数的输入处理(//www.tianjin-qmedu.com/matlabcentral/fileexchange/10670-parseargs-simplifies-input-processing-for-functions-with-multiple-options), MATLAB中央文件交换。检索

Matlab释放兼容性
创建R12.1
兼容任何释放
平台的兼容性
视窗 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!