matlab 里try用法,matlab在整个程序(全局)中使用try-catch来报告错误

我的matlab程序是一个多窗口程序化GUI。我已经实现了一个报告系统,所以当遇到错误时,它会调用我编写的函数generateReport.m,它发送一个带有一些日志和状态信息的电子邮件,然后继续执行。

为了实现这一点,我在每个单独的函数中都放了一个try-catch块。这意味着甚至为我的main函数创建一个包装器。有人知道避免这种情况的方法吗?即能够进行全球尝试。我现在需要多个try-catch块的原因是因为try-catch会捕获块中函数的错误,而不是那些的子函数

psuedo-code示例:

try:

segmentImage

catch:

generateReport

end

^ - 这样,段映像中的错误会调用generateReport,但是段映像的子函数中的错误不会。最理想的是,我只需要在每个文件中使用一个try-catch(或其他一些我不知道的语句/结构)。

该问题询问如何在回调中使用try-catch或一些函数包装器来实现我现在的报告系统。之前我只想知道为什么我无法捕捉到子功能中的错误。我在每个子功能中都设置了try-catch来解决这个问题。

这个问题是不同的,因为我问的是,是否还有另一种方法可以做到这一点,而不是在每个功能和子功能中放置一个try-catch,这真的很不方便,看起来不那么好。也许需要一种我不知道要做的技术,还是需要一种更有效的方法来构建我的代码来实现这一目标?

多次尝试捕获的示例:

首先是我运行的主要功能,它只包含CSTMainWindow

function CeleST

try

% Global try-catch on CeleST

CSTMainWindow()

catch exception

generateReport(exception)

end

在CSTMainWindow中:我必须在它的子功能上放置try-catch块。在此示例中,给定CSTProcessVideos和CSTCheckResults是编程GUI文件

function processVideo(hObject,eventdata) %#ok

try

set(mainFigure,'Visible','off');

CSTProcessVideos

set(mainFigure,'Visible','on');

flagConsistentButton = false;

checkSequences

populateFilters

catch exception

generateReport(exception)

end

end

function checkResults(hObject,eventdata) %#ok

try

set(mainFigure,'Visible','off');

CSTCheckResults

set(mainFigure,'Visible','on');

flagConsistentButton = false;

checkSequences

populateFilters

catch exception

generateReport(exception)

end

end

我想知道我是否可以采取一些措施来避免对所有内容进行try-catch(我还将try-catch块放在不包含其他文件中编写的代码的子函数中)

我希望我的问题很明确。在此先感谢您的帮助

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤题库】陕西师范大学200741概率论与数理统计作业(高起本、专升本)

《概率论与数理统计》作业 一、填空题 1.设有两门高射炮,每一门击中飞机的概率都是0.6,则同时发射一发炮弹而击中飞机的概率为   .若有一架敌机入侵领空,欲以99%以上的概率及中它,至少需 __&…

php xls 邮件,PHPMailer发送邮件

PHPMailer是一个封装好的PHP邮件发送类,支持发送HTML内容的电子邮件,以及图片附件,前提要设置好邮件服务器就能实现邮件发送功能。HTML首先我们先放置一个收件箱的输入框和一个发送邮件按钮:收件人:jQuery$(function()…

activiti自定义_在Activiti中执行自定义查询

activiti自定义(这可能最终会出现在Activiti 5.15版本的用户指南中,但是我已经想要共享它了) Activiti API允许使用高级API与数据库进行交互。 例如,对于检索数据,查询API和本机查询API的用法很强大。 但是&#xff0…

【渝粤题库】陕西师范大学201371 国际法学作业

《国际法》作业 一、填空题 1.( )和( ) 是国际法的主要渊源。 2.现代国际法主体应包括:国家、( )和( ) 3.国家领土包括:领…

【渝粤题库】陕西师范大学201901 中国古代文学(二) 作业(高起专)

《中国古代文学(二)》【高起专】作业 一、单选题 1、提出“大凡物不得其平则鸣”这一著名观点的作家是( ) A 李白 B 杜甫 C 韩愈 D 白居易 2、韦庄写有一首涉及黄巢起义的长篇叙事诗,题目叫做( &#xff09…

php实际开发过程,4.工作实际开发应用

**本文以thinkphp5中扩展 think-queue的应用为实例**1.安装think-queue 扩展composer install topthink/think-queue2.index模块下新建控制器,调用消息队列入队~~~namespace app\index\controller;/*** 文件路径: \application\index\controller\JobTest.php* 该控制…

引导性GCP:带有Google Cloud Pub / Sub的Spring Cloud Stream

我最近在Sprint Central的工程博客上阅读了Josh Long的Bootiful GCP系列 ,特别喜欢关于使用Google Cloud的Pub / Sub的第四部分 。 我受到该系列的启发,同时我还在为我的一个新项目评估Spring Cloud Stream。 我以为,我会继续讨论乔希&#x…

【渝粤题库】陕西师范大学202241 金融市场学 作业(专升本)

《金融市场学》作业 一 名词解释 1.货币头寸   2.金边债券   3.二板市场 4.金融市场 5.投资基金 6.系统风险 7.外汇市场 8.货币市场共同基金 9.衍生证券 10&#x…

【渝粤题库】陕西师范大学210002儿童文学 作业(高起专、高起本、专升本)

《儿童文学》作业 单选题 1、构成作品音响效果的因素是象声词、韵律和( )。 2、幼儿文学作品用词的总要求是:具体、浅显、充分发挥( )作用 3、在儿童文学创作艺术手法的运用中应注意心理描写和( &#xff…

db2 迁移mysql,mysql 迁移 db2

我该怎样迁移数据呢?如果用于非 IBM 平台的数据库模式与用于 DB2 的模式相同(或非常类似),那么可 以通过使用 IBM Migration Toolkit (MTK) 来完成数据迁移。因此......4. . 迁移应用程序 1.不同数据库的对象区别 Mysql/Sql Server->oracle 自增长 vs 序列 Oracle->DB2 …

jdbc和jdbc驱动_JDBC布尔兼容性列表

jdbc和jdbc驱动有趣的是,布尔类型只是在SQL标准后期才引入,即SQL:1999 。 即使在今天,并非所有数据库本身都支持BOOLEAN或BIT类型。 最重要的是,我们仍然可以在Oracle中等待一段时间。 这是2002年以来关于该主题的“问…

【渝粤题库】陕西师范大学300008 历史教学论

《历史教学论》作业 一、名词解释 1.历史课程标准 2.综合课型 3.讲述法 4.历史基础知识 5.历史教材 6.历史概念 7.复习课 8.讲解法 9.叙述法 10.绪论课 11&am…

【渝粤题库】陕西师范大学500013 物理教学论 作业(专升本)

《物理教学论》作业 一、简答题 1、中学物理教学应坚持哪些主要的教学原则? 2、适应新课程教学物理教师应具备怎样的智能结构? 3、中学生学习物理的主要思维特征是什么? 4、发展性课程评价体系的基本理念和原则是什么? 5、物理教学…

IDE日志分析方法pt。 1个

介绍 我认为大多数软件工程师都了解日志的重要性。 它们已成为软件开发的一部分。 如果无法解决问题,我们尝试在日志中查找原因。 对于一些简单的情况,当错误阻止应用程序打开窗口时,这可能就足够了。 您可以在日志中找到问题,然后…

ycms+php,CMS下载_建站大师 - 建站模板,CMS模板,网站开发

增加后台和用户中心可查看升级值的记录[12-14]增加后台为用户充值升级值的功能[12-14]增加后台列表的字段回调格式函数:联动菜单名称、单选字段名称、下拉字段名称、复选框名称[12-16]增加钩子接口:模块内容审核处理之后(module_verify_after)[12-17]增加…

【渝粤题库】陕西师范大学700011 新课程改革与生物教材研究

《新课程改革与生物教材研究》作业 一、选择题 1、1921年弗雷德里克班廷从狗的体内分离得到天然胰岛素。40多年后,首次人工合成结晶牛胰岛素的科学家是 A.中国人 B.加拿大人 C.美国人 D.德国人 2、轴突是神经细胞的 A&…

国家开放大学2021春1050金融理论前沿课题题目

教育 教育 试卷代号: 1050 2021年春季学期期末统一考试 金融理论前沿课题 试题(开卷) 2021年7月 一、名词解释(每小题5分,共15分) 1.骆驼评级体系: 2.经济数据偏差: 3.核心通货膨胀…

java运行构建期间出错_构建和运行Java 8支持

java运行构建期间出错尚未提供对Java 8的Eclipse支持。 如果要使用它,则必须构建它。 Eclipsepedia的JDT Core / Java8页面包含有关使用Eclipse Java开发工具 (JDT)中不断发展的Java 8支持源来设置开发环境的说明。 说明中缺少一些内容&#…

php ord函数 中文,php ord 函数与中文乱码解决方法_PHP教程

//a字符$str(pack(“a*”, “中国”));echo $str,””,strlen($str),”字节n”;getascill($str);//h字符$str(pack(“h*”, “fffe”));echo $str,””,strlen($str),”字节n”;getascill($str);//c字符$str(pack(“c*”, “55”,”56″,”57″));echo $str,””,strlen($str),…

从Commons CLI迁移到picocli

最初于2002年发布的Apache Commons CLI可能是使用最广泛的Java命令行解析器,但是它的API显示了它的年龄。 寻找具有最少样板代码的现代方法的应用可能对picocli感兴趣。 为什么要花麻烦的钱进行迁移,以及如何将基于Commons CLI的应用程序迁移到picocli&a…