SETARGS | Parse user-specified optional arguments (varargin) with default values

バージョン 2.0.0.0 (1.85 KB) 作成者: Bob Spunt
Assigning values (default vs. user) to optional arguments (varargin) in a function
ダウンロード: 347
更新 2016/10/31

This is a utility for setting the value of optional arguments to a function. The first argument is required and should be a cell array of "name, default value" pairs for all optional arguments. The second argument is optional and should be a cell array of "name, custom value"pairs for at least one of the optional arguments.
USAGE: argstruct = setargs(defaultargs, varargs)

---
OUTPUT

ARGSTRUCT
structure containing the final argument values

---
INPUTS

DEFAULTARGS
cell array of "'Name', value" pairs for all variables with default values

VARARGS [optional]
cell array of user-specified "'Name', value" pairs for one or more of the variables with default values. this will typically be the "varargin" cell array. for each pair, SETARGS determines if the specified variable name can be uniquely matched to one of the default variable names specified in DEFAULTARGS. matching uses STRNCMPI and thus is case-insensitive and open to partial name matches (e.g., default variable name 'FontWeight' would be matched by 'fontweight', 'Fontw', etc.). if a match is found, the user-specified value is then used in place of the default value. if no match is found or if multiple matches are found, SETARGS returns an error and displays in the command window information about the argument that caused the problem.

---
USAGE EXAMPLE (TO BE USED AT TOP OF FUNCTION WITH VARARGIN)

defaultargs = {'arg1', 0, 'arg2', 'words', 'arg3', rand};
argstruct = setargs(defaultargs, varargin)

引用

Bob Spunt (2024). SETARGS | Parse user-specified optional arguments (varargin) with default values (https://github.com/spunt/setargs), GitHub. 取得済み .

MATLAB リリースの互換性
作成: R2014b
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersArgument Definitions についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

GitHub の既定のブランチを使用するバージョンはダウンロードできません

バージョン 公開済み リリース ノート
2.0.0.0

Updated documentation and variable names and clarified content of error messages

1.0.0.0

この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。
この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。