matlab调试代码时总是遇到这样一个奇怪的问题,就是当我在主程序(.m脚本)中调用子函数并在子函数中设置断点,然后开始调试运行主程序。。。
发现主程序直接运行到结束而并没有在调用子函数的时候在所设置的断点处停下来,而且所设置的断点也被清除。。。
但是如果在主程序中调用相应子函数的地方设置断点,调试时在此处停一下然后在继续运行则可以在子函数中的断点停下。。。
这个问题困扰我挺长时间,虽然用第二种方法能够实现需要的调试功能,但是总是要在主程序停一下,有点麻烦
so, 有事问谷歌~~you get the answer。。。
原来是因为在主程序中开始的时候习惯调用clear all清除,而这个语句会将设置的breakpoint也清除掉,所以会出现那种情况~~
汗~~~,原来如此,忽然有种醍醐灌顶的赶脚
所以没事google一下还是有帮助的^^
ref:
https://www.mathworks.com/matlabcentral/newsreader/view_thread/258878
http://*.com/questions/23843708/matlab-setting-breakpoints-in-called-functions