作者AlphaCall (阿伐扣)
看板MATLAB
标题[问题] Matlab 可以多载吗?
时间Sun Apr 14 20:20:04 2019
最近在自学 ,Matlab, 想请教一下 Matlab 自订函数可以多载吗?
例如我自订一个函数 abc, 他分别可以有一个引数跟两个引数
abc(x), abc(x,y),
像官方原生的一些函数都可以这样, 自订的也有办法做到吗?
X = zeros(n)
X = zeros(sz1,...,szN)
抱歉因为上网查都查不到, 用多载当关键字找也找不到 还请前辈指点
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.35.37.240
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1555244407.A.6E0.html
※ 编辑: AlphaCall (114.35.37.240), 04/14/2019 20:20:54
1F:推 sin55688: 印象中,自定义函数不给满引数也可以执行 04/14 20:26
2F:→ sin55688: 例如你定义 abc(x,y,z), 使用的时候只给1引数 abc(1) 也 04/14 20:27
3F:→ sin55688: 可以运行。 另外函数内可以检查是否有引数x,y,z被输入 04/14 20:28
4F:推 profyang: varargin nargin 04/14 20:52
5F:→ AlphaCall: 感谢前辈有求必应! 我研究一下, 谢谢各位 ^^ 04/14 21:05
6F:推 profyang: 大概就是 abc(varargin) 这样 然後if nargin==1怎样 04/14 22:41
7F:→ profyang: nargin==2怎样之类的 04/14 22:42
8F:→ profyang: varargin就是使用者输入的引数 第一个引数就是 04/14 22:44
9F:→ profyang: varargin{1} 第二个就是varargin{2} 以此类推 04/14 22:44
10F:→ profyang: nargin就是使用者现在输入的有几个引数 04/14 22:45