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

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

Go 語言中的二傳手

Go 語言中的二傳手

Go
米脂 2023-04-24 16:51:44
抱歉這個基本問題。我是 GoLang 的新手。我有一個名為的自定義類型ProtectedCustomType,我不希望其中的變量set直接由調用者使用,而是希望一個Getter/Setter方法來執行此操作下面是我的ProtectedCustomTypepackage customtype ProtectedCustomType struct {    name string    age int    phoneNumber int}func SetAge (pct *ProtectedCustomType, age int)  {    pct.age=age} 這是我的main功能import (    "fmt"    "./custom")var print =fmt.Printlnfunc structCheck2() {    pct := ProtectedCustomType{}    custom.SetAge(pct,23)    print (pct.Name)}func main() {    //structCheck()    structCheck2()}但是我無法繼續進行.. 你能幫我看看如何在 GoLang 中實現 getter-setter 概念嗎?
查看完整描述

1 回答

?
慕斯王

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

如果你想有 setter 你應該使用方法聲明:

func(pct?*ProtectedCustomType)?SetAge?(age?int)??{
????pct.age?=?age
}

然后你就可以使用:

pct.SetAge(23)

這種聲明使您能夠通過使用

(pct *ProtectedCustomType)

您正在將指針傳遞給您的結構,因此對它的操作會改變其內部表示。


查看完整回答
反對 回復 2023-04-24
  • 1 回答
  • 0 關注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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