• MATLAB 函数默认参数配置


    MATLAB 函数默认参数配置

    目标:定义函数时,设置某些参数的默认值

    思路:使用inputParser

    Step1: 使用 varargin (var-arg-in,输入变量列表)用来接收任意个数的输入参数。
    Step2: 构造 inputParser 输入解析器ip,利用 addParameter() 定义默认参数及其默认取值。
    Step3: 通过 parse() 对输入变量列表 varargin 进行解析,若检测到已定义的参数在 varargin 中被重新赋值(即不使用默认参数),则更新该参数。
    Step4:ip.Results.parameter_name 的格式,对参数进行引用,进行后续操作。


    Code Demo

    %% 配置默认参数start_index=1000,len=20000
    % example: 
    % 	start_index = 1000; len = 20000; 
    % 	result = demo_default('start_index', 1000, 'len', 20000)
    
    function [result] = demo_default(varargin)
    %% default parameters
    ip = inputParser;            % 函数的输入解析器
    addParameter(ip,'start_index',1000);      % 设置变量名和默认参数(start_index=1000)
    addParameter(ip,'len',20000);      % 设置变量名和默认参数(len=20000)
    parse(ip,varargin{:});       % 对输入变量进行解析,如果检测到前面的变量被赋值,则更新变量取值
    start_index = ip.Results.start_index; % 默认参数start_index读取
    len = ip.Results.len; % 默认参数len读取
    % TO DO
    
    end
    

    Note

    函数调用时,若不使用函数中的默认参数,则使用 name_1, value1,...,name_n, value_n 这种字符串和数值组合形式赋值(PS:参数赋值方式,可以不按照函数中定义的顺序进行赋值)。

    环境

    • MATLAB 2021a
    • Windows 10 64bits

    参考链接
    https://ww2.mathworks.cn/help/matlab/ref/inputparser.html
    https://ww2.mathworks.cn/help/matlab/ref/inputparser.addparameter.html

  • 相关阅读:
    next_permitation
    POJ 1979 Red and Black
    POJ 2386 Lake Counting
    BFS简单迷宫
    部分和问题
    图论复习--二分图判断
    danci1
    danci
    jquery事件重复绑定解决办法
    danci
  • 原文地址:https://www.cnblogs.com/fairylyl/p/15917411.html
Copyright © 2020-2023  润新知