使用varargin(...)时如何显示不同的功能用法?

Mic*_*vin 5 matlab

当您键入Matlab函数名称并sum(在命令窗口中打开括号(例如)时,将打开一个工具提示,显示此函数的所有可能用法.

当我编写自己接受的函数时,varargin工具提示只显示一个选项,而不是vararginput ...(例如myfunc(x,...)).

如何向用户建议我的功能的更具体用法?

Ian*_*cks 0

如果您知道变量输入的最大数量及其所有名称,一种方法是执行以下操作:

function out = my_func(var1, var2, var3)

    if nargin < 1
        var1 = default_var1_value;
    end
    if nargin < 2
        var2 = default_var2_value;
    end
    if nargin < 3
        var3 = default_var3_value;
    end

end
Run Code Online (Sandbox Code Playgroud)

当您执行此操作时,Matlab 允许您my_func使用 0、1、2 或 3 个参数进行调用。但工具提示只有一项:

my_func(var1, var2, var3)
Run Code Online (Sandbox Code Playgroud)

这,对我来说,至少看起来比.... 我不知道如何/是否可以使其显示多个工具提示。

编辑:似乎内置函数在某处获得了某种额外的特权。例如,rankMatlab 附带该函数并显示两个工具提示。如果您edit rank将代码复制到一个新文件中my_func.m,并重命名该函数my_func,它只会获得一个工具提示。所以这不仅仅是顶部注释行的一些特殊格式。