背景
接口出現異常,發現這個錯誤
runtime error: invalid memory address or nil pointer dereference
原有: 指針變量為空,此時訪問指針變量的成員,就會出現這個問題。
下面一個測試的錯誤再現demo, 當然我們平常開發的時候,錯誤不會這么明顯,但本質是一樣的,只要看下面報錯信息部分,就可以迅速定位到問題所在
只有標記的這部分是和自己代碼比較相關的,每個藍色的錯誤連接都可以點擊進去看到錯誤處的源碼,
顯然我們就已經找到了問題的出現地方,就是 這個部分,res 本身是一個空指針,然后訪問空指針的內部成員,就出現panic 錯誤。
經常錯誤的地方:
通常 指針變量沒有完成初始化 就調用對象方法 或者訪問對象成員變量,就會出現這個問題,平常檢查代碼是否有類似現象,