dbstop error在Matlab工作时我经常使用.的时间的好部分,一个错误导致引发错误内部内置[M-文件]的功能,然后使Matlab来停止执行并打开文件的.但是,调试内置文件内部几乎没有任何帮助,因此最终会破坏我的工作流程.可能有一种方法来设置,以便Matlab退出调试器中的内置文件(从不打开它),让我在函数调用?
根据Rody 的回答和 Mathworks 的反馈,这是您目前可以获得的最接近的结果 (R2016b):
S = dbstack('-completenames');
builtins = ~cellfun('isempty', strfind({S(:).file}, matlabroot()));
stack_depth = find(~builtins, 1, 'first');
hDocument = matlab.desktop.editor.findOpenDocument(S(1).file);
matlab.desktop.editor.openAndGoToLine(S(stack_depth).file,S(stack_depth).line);
hDocument.close();
if stack_depth == 2
dbup();
end
Run Code Online (Sandbox Code Playgroud)
该快捷方式将:
问题是 dbup() 只工作一次 - 调用后,脚本中的执行停止。没有函数可以切换到堆栈中的任意位置。
| 归档时间: |
|
| 查看次数: |
384 次 |
| 最近记录: |