【matlab】设定函数默认参数
2016-10-25 11:50
429 查看
C++/java/python系列的语言,函数可以有默认值,通常类似如下的形式:
到了matlab下发现并不能这样写。那是不是说matlab中希望函数有默认参数,就一定要很麻烦地,使用nargin来辅助实现呢?比如:
上面这种写法缺点明显:如果有多个参数有默认值,那么nargin的判断语句太多了。
那就试试inputParser。比如:
funtion_name (param1, param2=default_value, ...)
到了matlab下发现并不能这样写。那是不是说matlab中希望函数有默认参数,就一定要很麻烦地,使用nargin来辅助实现呢?比如:
% 第三个参数有默认值 function [result]=some_fun(param1, param2) if (nargin<3) param3 = 'default_param3_value'; end ... end
上面这种写法缺点明显:如果有多个参数有默认值,那么nargin的判断语句太多了。
那就试试inputParser。比如:
function [result]=some_fun(varargin) ip = inputParser; %接下来设定默认值,还可以指定是必须参数还是可选参数等。 ip.addParamValue('use_gpu', 1); %其他还有 ip.addParameter(),ip.addRequired()等函数可用 ... %然后将输入的参数进行处理,如果有不同于默认值的那就覆盖掉 ip.parse(varargin{:}); result=ip.Results; end
相关文章推荐
- MATLAB的plot函数颜色和线型设定参数
- 【分享】给函数设置 默认参数【C++源码】
- Effective C++学习笔记:在函数重载和设定参数缺省值间慎重选择
- matlab——二维绘图函数及部分参数
- Matlab中使用varargin来实现参数可变的函数
- c++只要基类有虚函数,子类同名同参数同返回值同属性的函数默认都是虚函数
- 为什么C#不支持函数默认参数呢
- jQuery一些函数的默认参数
- js定义函数和默认参数
- C++里面的重写带有默认参数的虚函数的问题
- 继承和基类的虚函数的访问限制和默认参数值的问题
- 函数的默认参数
- C++编程思想(2nd卷一):函数重载与默认参数
- 函数的默认参数
- asp(vbscript)中实现自定义函数的默认参数
- Matlab 函数参数汇总
- 函数默认参数
- 在函数重载和设定参数缺省值间慎重选择
- 绝不重定义继承的函数默认参数
- 虚函数的默认参数 ——关于条款38的测试