matlab調試代碼時總是遇到這樣一個奇怪的問題,就是當我在主程序(.m腳本)中調用子函數並在子函數中設置斷點,然后開始調試運行主程序。。。
發現主程序直接運行到結束而並沒有在調用子函數的時候在所設置的斷點處停下來,而且所設置的斷點也被清除。。。
但是如果在主程序中調用相應子函數的地方設置斷點,調試時在此處停一下然后在繼續運行則可以在子函數中的斷點停下。。。
這個問題困擾我挺長時間,雖然用第二種方法能夠實現需要的調試功能,但是總是要在主程序停一下,有點麻煩
so, 有事問谷歌~~you get the answer。。。
原來是因為在主程序中開始的時候習慣調用clear all清除,而這個語句會將設置的breakpoint也清除掉,所以會出現那種情況~~
汗~~~,原來如此,忽然有種醍醐灌頂的趕腳
所以沒事google一下還是有幫助的^^
ref:
https://www.mathworks.com/matlabcentral/newsreader/view_thread/258878
http://stackoverflow.com/questions/23843708/matlab-setting-breakpoints-in-called-functions