中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

非零基礎自學Golang第9章結構體9.5結構體方法-創新互聯

非零基礎自學Golang

成都創新互聯長期為上1000家客戶提供的網站建設服務,團隊從業經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態環境。為濟水街道企業提供專業的成都做網站、成都網站建設,濟水街道網站改版等技術服務。擁有10余年豐富建站經驗和眾多成功案例,為您定制開發。文章目錄
      • 非零基礎自學Golang
      • 第9章 結構體
        • 9.5 結構體方法
          • 9.5.1 指針類型接收者
          • 9.5.2 值類型接收者

第9章 結構體 9.5 結構體方法

Go語言中,一個方法就是一個包含了接收者的函數。

對于結構體方法,接收者可以是結構體類型的值或是指針。

9.5.1 指針類型接收者

當接收者類型為指針時,可以通過該方法改變該接收者的成員變量值,即使你使用了非指針類型實例調用該函數,也可以改變實例對應的成員變量值。

在以下示例中,我們為User結構體創建了ChangeName方法,在該方法內部將接收者的Name值修改為Tom,接收者的類型為指針類型:

[ 動手寫9.5.1 ]

package main

import "fmt"

type User struct {Name  string
   Email string
}

func (u *User) ChangeName() {// 指針類型接收者
   u.Name = "Tom"
}

func main() {u := &User{"Peter", "[email protected]"} // 創建指針類型結構體實例
   fmt.Println("Name: ", u.Name, " Email: ", u.Email)

   u.ChangeName()
   fmt.Println("Name: ", u.Name, " Email: ", u.Email)
   
}

運行結果

在這里插入圖片描述

只要結構體方法的接收者為指針類型,即使實例不是指針類型,修改也能生效:

[ 動手寫 9.5.2 ]

package main

import "fmt"

type User struct {Name  string
   Email string
}

func (u *User) ChangeName() {// 指針類型接收者

   u.Name = "Tom"
}

func main() {u := User{"Peter", "[email protected]"} // 創建非指針類型結構體實例
   fmt.Println("Name: ", u.Name, " Email: ", u.Email)
   u.ChangeName()
   fmt.Println("Name: ", u.Name, " Email: ", u.Email)
   
}

運行結果

在這里插入圖片描述

9.5.2 值類型接收者

當接收者不是一個指針時,該方法操作對應接收者值的副本,否則即使你使用了指針調用函數,也無法改變成員變量值。

[ 動手寫 9.5.3]

package main

import "fmt"

type User struct {Name  string
   Email string
}

func (u User) ChangeName() {// 值類型接收者

   u.Name = "Tom"
}

func main() {u := &User{"Peter", "[email protected]"} //創建指針類型結構體實例

   fmt.Println("Name: ", u.Name, " Email: ", u.Email)

   u.ChangeName()
   fmt.Println("Name: ", u.Name, " Email: ", u.Email)
   
}

運行結果

在這里插入圖片描述

如果方法需要修改接收者,接收者必須是指針類型。一般約定的接收者命名是類型的一個或兩個字母的縮寫(如u或者us之于User)。

你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

分享文章:非零基礎自學Golang第9章結構體9.5結構體方法-創新互聯
本文來源:http://m.2m8n56k.cn/article6/ceddog.html

成都網站建設公司_創新互聯,為您提供網站營銷移動網站建設全網營銷推廣網站設計公司品牌網站建設自適應網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

h5響應式網站建設
主站蜘蛛池模板: 久久精品免费播放 | 日本高清色视频www 日本高清在线精品一区二区三区 | 久久免费视频在线观看 | 日本波多野结衣在线 | 性理论片| 男女男精品视频网站在线观看 | 91无毒不卡| 免费国产成人高清视频网站 | 国产区亚洲区 | 亚洲一区二区三区在线播放 | 国产精品91在线播放 | 国产男女交性视频播放免费bd | 欧美在线黄 | 精品视频在线观看 | 亚洲日本在线观看 | 亚洲欧美另类在线视频 | 免费观看毛片的网站 | 中文字幕无线精品乱码一区 | 在线精品国产三级 | 成人午夜在线视频 | 国产亚洲综合久久 | 国产在线视频h | 亚洲国产成人超福利久久精品 | 亚洲高清国产品国语在线观看 | 免费观看成年的网站 | 欧美亚洲另类久久综合 | 成人爽a毛片在线视频网站 成人爽爽大片在线观看 | 成人a免费α片在线视频网站 | 精品亚洲欧美高清不卡高清 | 久久精品免费观看 | 亚洲三级中文字幕 | 99久久久久国产精品免费 | 国产a久久精品一区二区三区 | 久久思思爱 | 亚洲欧美一区二区三区久久 | 久久久久久毛片免费观看 | 91年精品国产福利线观看久久 | 国产在线精品一区二区不卡 | 日本一级毛片中文字幕 | 98国内自拍在线视频 | 一级黄一片 |