第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

golang中方法定義取舍求老司機(jī)指點(diǎn)!

golang中方法定義取舍求老司機(jī)指點(diǎn)!

守著星空守著你 2019-10-10 15:52:12
golang中這兩種方法的如何取舍選擇,之間有什么區(qū)別functest(&post)error{}和functest()(postPost,errerror){}學(xué)習(xí)golang期間看到有些內(nèi)部方法是通過(guò)形參形式給參數(shù)賦值的,比如json.Unmarshal定義為funcUnmarshal(data[]byte,vinterface{})error{//Checkforwell-formedness.//Avoidsfillingouthalfadatastructure//beforediscoveringaJSONsyntaxerror.varddecodeStateerr:=checkValid(data,&d.scan)iferr!=nil{returnerr}d.init(data)returnd.unmarshal(v)}為何不定義成如下這種方式funcUnmarshal(data[]byte)(vinterface,errerror){……}
查看完整描述

2 回答

?
幕布斯7119047

TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊

函數(shù)參數(shù)
functest(&post)error給與了一個(gè)具體的對(duì)象,通常用于需改等操作,例如funcUpdatePostInfo(&post)error
functest()(postPost,errerror)沒(méi)有給與具體的對(duì)象,通常用于new,例如funcNewPostInfo()(postPost,errerror)
請(qǐng)問(wèn)v是什么類型?
funcUnmarshal(data[]byte)(vinterface,errerror)
json.Unmarshal傳入的對(duì)象具有類型信息,例如實(shí)際的map和struct類型,才能根據(jù)需要反序列化的對(duì)象的全部屬性來(lái)設(shè)置json的值,如果不傳入類型信息,那么json庫(kù)不知道該如何存儲(chǔ)json信息。
                            
查看完整回答
反對(duì) 回復(fù) 2019-10-10
?
慕斯709654

TA貢獻(xiàn)1840條經(jīng)驗(yàn) 獲得超5個(gè)贊

傳指針可以直接修改變量,用返回值的還有多一個(gè)拷貝。
Unmarshal實(shí)際也是需要一個(gè)指針,然后可以寫(xiě)進(jìn)變量里。用返回值就還得拷貝。
但是golang想表示任意類型的指針,只能interface{}了....
                            
查看完整回答
反對(duì) 回復(fù) 2019-10-10
  • 2 回答
  • 0 關(guān)注
  • 407 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)