類型*T方法集
成都創新互聯服務項目包括雁山網站建設、雁山網站制作、雁山網頁制作以及雁山網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,雁山網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到雁山省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!
// code_018_struct_method_set project main.go
package main
import (
"fmt"
)
//類型*T方法集
type Person struct {
name string
sex byte
age int
}
//指針作為接收者,引用語義
func (p *Person) SetInfoPointer() {
(*p).name = "yoyo"
p.sex = 'f'
p.age = 22
}
//值作為接收者,值語義
func (p Person) SetInfoValue() {
p.name = "xxx"
p.sex = 'm'
p.age = 33
}
func main() {
//p 為指針類型
var p *Person = &Person{"mike", 'm', 18}
p.SetInfoPointer() //func (p) SetInfoPointer()
fmt.Println(p)
p.SetInfoValue() //func (*p) SetInfoValue()
fmt.Println(p)
(*p).SetInfoValue() //func (*p) SetInfoValue()
fmt.Println(p)
}
類型T的方法集
// code_018_struct_method_set2 project main.go
package main
import (
"fmt"
)
//類型T方法集
type Person struct {
name string
sex byte
age int
}
func (p *Person) SetInfoPointer() {
(*p).name = "yoyo"
p.sex = 'f'
p.age = 22
}
func (p Person) SetInfoValue() {
p.name = "xxx"
p.sex = 'm'
p.age = 33
}
func main() {
//p為普通類型
var p Person = Person{"ck_go", 'm', 18}
(&p).SetInfoPointer()
p.SetInfoPointer()
p.SetInfoValue()
(&p).SetInfoValue()
fmt.Println(p)
}
網頁名稱:Go中的方法集
本文來源:http://www.2m8n56k.cn/article8/gpoeop.html
成都網站建設公司_創新互聯,為您提供網頁設計公司、網站維護、商城網站、網站設計、外貿網站建設、微信小程序
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯