function - MATLAB 函数中的可选参数

标签 function math matlab parameters arguments

如何在 MATLAB 中声明带有可选参数的函数?

例如:function [a] = train(x, y, opt),其中 opt 必须是可选参数。

最佳答案

关于如何执行此操作有几个不同的选项。最基本的是使用 varargin ,然后使用narginsize等判断可选参数是否已经传递给函数。

% Function that takes two arguments, X & Y, followed by a variable 
% number of additional arguments
function varlist(X,Y,varargin)
   fprintf('Total number of inputs = %d\n',nargin);

   nVarargs = length(varargin);
   fprintf('Inputs in varargin(%d):\n',nVarargs)
   for k = 1:nVarargs
      fprintf('   %d\n', varargin{k})
   end

看起来更优雅一点的解决方案是使用 inputParser类来定义你的函数期望的所有参数,包括必需的和可选的。 inputParser 还允许您对所有参数执行类型检查。

关于function - MATLAB 函数中的可选参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6764062/

相关文章:

来自 header 的静态函数的c++怪异行为

c++ - 围绕点的最小凸多边形

flash - Flash应用中矩形的姿态估计

matlab - 尝试将颜色图应用于 MATLAB 中的条形图

arrays - 如何在Octave/MATLAB中找到向量每两个对应元素之间的范围?

function - 在它之外调用小部件自己的功能

c++ - 为什么这个函数返回的值与我在内联时返回的值不同?

r - 在栅格计算函数中评估文本

JavaScript,点击时一起递增和加/减数字

python - 如何在Python中加载Matlab的结构体(用v7.3保存)