」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何修改 Go 中指標取消引用的值?

如何修改 Go 中指標取消引用的值?

發佈於2024-11-08
瀏覽:148

How Do You Modify the Value Dereferenced by a Pointer in Go?

修改 Go 中指標取消引用的值

將指標傳遞給函數允許修改它們引用的值。但是,需要了解指標的內部工作原理才能正確執行此操作。

取消引用指標

要修改指標指向的值,必須取消引用指標。在 Go 中,星號運算子 (*) 用於此目的。透過取消引用指針,您可以存取它指向的基礎值。

更改指標值與指向的值

主要區別在於更改指標的值和更改其值之間指向.為指標變數分配新值只會更改它儲存的位址。例如,下面的程式碼片段不會修改指向的值:

func f(p *Test) {
   p = &Test{4}
}

修改指向的值

要修改指向的值,需要使用解引用運算子。這可以顯式或隱式完成。

明確解除引用:

func f(p *Test) {
   *p = Test{4}
}

隱含取消引用:

func f(p *Test) {
   p.Value = 4
}

在這兩種情況下,p 所指向的值都會改變。

指向指標修改的指標

將指標傳遞給指標(*測試)允許修改主函數中儲存的指標值。但是,它不會改變原始指標指向的值。

func f(p **Test) {
   *p = &Test{4}
}

總之,在將指標傳遞給函數時,了解修改指標的值和修改其指向的值之間的區別至關重要。取消引用指針對於執行後一個操作至關重要,從而可以修改基礎資料值。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3