matlab function报错:too many input arguments
使用matlab function的时候,我定义了一个函数ladder,调用的时候,出现报错:
网上的大牛说,产生这个错误的原因是因为函数定义名称和系统定义函数冲突。但是在我的这个案例中,ladder函数并不是系统定义函数。
可以看到,这里系统是能将我编译的函数识别成ladder的,因为我的ladder函数存储在一个ladder.m文件当中。
但是,如果我把ladder函数所在的m文件改名成其他,比如ladder1.m,那么我们再用help看一下
会发现ladder其实是一个class。
所以,当你的函数名和matlab系统定义的函数或者class之类的冲突的时候,你也会遇到“too many input arguments”的报错。
最好的防止此类错误的方式,就是将函数命名为具有个人标签的函数,比如ladder可以命名为“xxx_ladder”(xxx)为个人姓名。
转载知乎:因为我的网络上不了知乎,如侵权告知删除