將指標傳遞給函數允許修改它們所引用的值。但是,需要了解指標的內部工作原理才能正確執行此操作。
要修改指標指向的值,必須取消引用指標。在 Go 中,星號運算子 (*) 用於此目的。透過取消引用指針,您可以存取它指向的基礎值。
關鍵區別在於更改指標的值和更改其值之間指向.為指標變數分配新值只會更改它儲存的位址。例如,下面的程式碼片段不會修改指向的值:
<code class="go">func f(p *Test) { p = &Test{4} }</code>
要修改指向的值,需要使用解引用運算子。這可以顯式或隱式完成。
明確解除引用:
<code class="go">func f(p *Test) { *p = Test{4} }</code>
隱式解除引用:
<code class="go">func f(p *Test) { p.Value = 4 }</code>
<code class="go">func f(p **Test) { *p = &Test{4} }</code>
以上是如何修改 Go 中指標取消引用的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!