亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么必須對指針使用星號而不是結構指針?

為什么必須對指針使用星號而不是結構指針?

Go
慕田峪7331174 2022-05-18 16:04:25
我想我缺少技術背景的一部分。但我不明白,為什么我必須使用 * 來訪問簡單指針的值,而不是訪問結構的值。例如一個簡單的值:func main() {    i := 42    p := &i    *p = 21         // <<< I have to use an asterisk to access the value    // ...}還有一個結構示例:type Vertex struct {    X int    Y int}func main() {    v := Vertex{1, 2}    p := &v    p.X = 1e9       // <<< I do not have to use an asterisk    // ...}(是的,樣本來自官方的 go lang 之旅:https ://go-tour-de.appspot.com/moretypes/4 )就我的想法而言,我會期待這樣的事情    *p.X = 1e9或者(是的,這會有點奇怪)    p.*X = 1e9那么,為什么我不必使用星號來訪問結構指針呢?
查看完整描述

1 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

您在此處找到該示例的官方 Golang 之旅 [此處] 明確表示:

當我們擁有可以編寫X的結構指針時訪問結構的字段。但是,這種表示法很麻煩,因此該語言允許我們只寫,而無需顯式取消引用。p(*p).Xp.X


查看完整回答
反對 回復 2022-05-18
  • 1 回答
  • 0 關注
  • 136 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號