1
有没有办法让MATLAB提醒开发人员或警告用户几个特定函数m-file的冲突(相同名称)版本存在于当前存在于path
中的不同目录中?这对于大型协作MATLAB项目非常有用。函数(文件)名称冲突警告
有没有办法让MATLAB提醒开发人员或警告用户几个特定函数m-file的冲突(相同名称)版本存在于当前存在于path
中的不同目录中?这对于大型协作MATLAB项目非常有用。函数(文件)名称冲突警告
如果你有你需要检查,看看是否已经存在与该名称的任何功能的特定功能名称,你可以使用函数WHICH。例如,如果我添加了一个新功能,文件test.m
我的当前目录(C:\Program Files\MATLAB\R2010b\bin\
),那么这就是它告诉我:
>> which test -all
C:\Program Files\MATLAB\R2010b\bin\test.m
C:\Program Files\MATLAB\R2010b\toolbox\stats\stats\@classregtree\test.m % classregtree method
C:\Users\user\Documents\MATLAB\test.m % Shadowed
现在有三个函数叫做test
:一个是classregtree
对象类的方法,其中一个是我刚刚做出的功能(顶线),最后一个(底线)现在被我刚刚制作的那个所遮蔽。这意味着,如果我从当前目录调用test
,则会调用第一个。如果我换到别的目录,我得到这个:
>> which test -all
C:\Users\user\Documents\MATLAB\test.m
C:\Program Files\MATLAB\R2010b\toolbox\stats\stats\@classregtree\test.m % classregtree method
较新的test
功能显示不出来了,因为以前的目录中并没有保存在MATLAB path。先前被遮蔽的test
函数现在将成为所谓的函数。