Jon*_*erg 6 matlab overloading suppress-warnings
如上所述这里,我创建了自己figure.m这很好地重载内置figure命令.现在,每当我启动MATLAB时,我都会收到警告
警告:函数C:\ somepath\figure.m与MATLAB内置函数同名.我们建议您重命名该函数以避免潜在的名称冲突.
有没有办法停用此警告,因为在我的情况下它是理想的行为?
您可能会说我应该以不同方式调用我的函数而不是重载,但我觉得我的开发系统这种重载是正确的方法...
更新
正如Aabaz所提到的,您可以使用全局关闭此警告
warning off MATLAB:dispatcher:nameConflict
Run Code Online (Sandbox Code Playgroud)
需要在matlabrc.m(在设置路径之前)的开始处进行.但是,我仍然会对一个解决方案感兴趣,该解决方案可以特定地删除此错误消息以重载figure.m(或一些自定义的函数列表)而不是所有函数.我猜我在这里要求太多了一些;-)?
我似乎无法用我的 Matlab 版本(R2008b)复制此警告,但无论如何,如果您还没有尝试过,您应该查看函数lastwarn和warning,它们允许您识别并关闭此警告。
PS:警告最终由于某种原因出现,我能够使用lastwarn和警告将其关闭。
>>[msgstr msgid]=lastwarn;
>>disp(msgid);
MATLAB:dispatcher:nameConflict
>>warning('off',msgid);
Run Code Online (Sandbox Code Playgroud)
我应该补充一点,您应该在启动时将其关闭,以便在 Matlab 的不同会话之间有效。