0.引言
寫MATLAB代碼時,在一個函數的實現中,需要調用另一個小的函數,由於只有幾行,所以就沒有單獨寫一個而是嵌入在當前函數中.結果最後在矩陣拼接的時候一直報錯矩陣維數不對,檢查了代碼邏輯也沒問題 ,挨着查看變量大小結果發現確實是矩陣維數不對,後來慢慢才找到出錯原因,在嵌套函數中的for循環變量i
會自動轉爲全局變量,有點類似於C中的靜態變量,導致當前函數的for循環變量i
的數值有誤.
但其實在代碼中是有警告的,當時沒管他:
1.solved
把嵌套函數中for循環變量更改爲其他變量表示.