MATLAB 中的错误处理与清理机制
1. 函数完成时的清理工作
1.1 概述
在编程中,确保程序环境在函数结束后处于干净状态是一个良好的实践,这样不会干扰其他程序代码。常见的清理任务包括:
- 关闭为导入或导出而打开的所有文件。
- 恢复 MATLAB 路径。
- 锁定或解锁内存,以防止或允许擦除 MATLAB 函数或 MEX 文件。
- 如果更改了工作文件夹,将其设置回默认值。
- 确保全局和持久变量处于正确状态。
MATLAB 提供了 onCleanup 函数来实现这些清理任务。当在任何程序中使用该函数时,它会为该函数建立一个清理例程。无论函数是正常终止、因错误终止还是通过 Ctrl+C 终止,MATLAB 都会自动执行清理例程。
建立清理例程的语句如下:
cleanupObj = onCleanup(@cleanupFun);
生成和激活函数清理的过程包括以下步骤:
1. 为正在开发的程序编写一个或多个清理例程,这里假设只需要一个这样的例程。
2. 为清理例程创建一个函数句柄。
3. 通常在程序代码的早期,插入对 onCleanup 函数的调用,并传递函数句柄。
4. 运行程序时,对 onCleanup 的调用会构造一个清理对象,该对象包含对步骤 1 中创建的清理例程的句柄。
5. 当程序结束时,MATLAB 会隐
超级会员免费看
订阅专栏 解锁全文
456

被折叠的 条评论
为什么被折叠?



