Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
创建MATLAB异常(MException对象)或打印警告或错误消息时,MATLAB允许您提供一个消息ID,该ID定义要抛出的异常。
消息ID的格式为: component:mnemonic 例如,MATLAB自己的未定义变量消息ID为: MATLAB:dispatcher:nameConflict 因此,当您在自己的代码中使用异常时,您将如何使用消息ID?您是否重用了MATLAB的默认值?弥补自己的?您如何使用组件和助记符字符串? 回答: 我通常遵循以下模式来获取错误(或警告) 消息标识符 ,其中括号内的内容可能存在也可能不存在: (className):(parentFunction):functionWhereErrorOccurs:descriptiveMnemonic 这些组件是:
假设您有一个函数myFcn和一个类myClass重载myFcn 。如果将第一个错误消息标识符设为myFcn:maxIterationsReached ,将第二个错误消息标识符设为myClass:myFcn:maxIterationsReached ,则这将允许您例如使用DBSTOP设置断点,该断点仅在以下情况下才暂停执行:此错误是由myClass\myFcn而不是myFcn 。同样,唯一的警告消息标识符很有用,因为您可以特别选择忽略 特定功能的警告 ,而只显示其他功能。 此外,您还可以在标识符中包括一些组件,这些组件指示发生错误的功能位于程序包文件夹或私有文件夹中 (但这可能会使标识符很长)。 更多&回答... |
![]() |
![]() |