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

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

Golang 使用標(biāo)志執(zhí)行函數(shù)

Golang 使用標(biāo)志執(zhí)行函數(shù)

Go
搖曳的薔薇 2022-10-31 15:39:08
如何通過(guò)輸入一個(gè)標(biāo)志來(lái)執(zhí)行特定的功能,例如,我有三個(gè)標(biāo)志:    wordPtr    numbPtr    forkPtr并且在執(zhí)行單個(gè)時(shí),調(diào)用的函數(shù)被執(zhí)行:.\data -wordPtr Test執(zhí)行該標(biāo)志時(shí),僅執(zhí)行 word 函數(shù):package mainimport (    "flag"    "fmt")var (    wordPtr string    numbPtr int    forkPtr bool)func main() {    flag.StringVar(&wordPtr, "word", "foo", "a string")    flag.IntVar(&numbPtr, "numb", 42, "an int")    flag.BoolVar(&forkPtr, "fork", false, "a bool")    flag.Parse()    if wordPtr != `` {        word(wordPtr)    }    if numbPtr != 0 {        numb(numbPtr)    }    if forkPtr {        fork(forkPtr)    }}func word(word string) {    fmt.Println("word:", word)}func numb(numb int) {    fmt.Println("numb:", numb)}func fork(fork bool) {    fmt.Println("fork:", fork)}但是,當(dāng)我執(zhí)行最后一個(gè)標(biāo)志時(shí),所有功能都被執(zhí)行PS C:\golang> .\logdata.exe -forkword: foonumb: 42      fork: true    PS C:\golang> 你知道為什么嗎?
查看完整描述

2 回答

?
慕標(biāo)5832272

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

word您為和標(biāo)志提供默認(rèn)值numb,這意味著如果您不將它們作為 cli 參數(shù)提供,它們將獲得默認(rèn)值。

flag.Parse()你只測(cè)試 if wordPtris not empty 或numbPtris not0之后,由于默認(rèn)值不是這些,測(cè)試將通過(guò)并且函數(shù)將被執(zhí)行。

如果您使用空字符串并0作為默認(rèn)值:

flag.StringVar(&wordPtr, "word", "", "a string")
flag.IntVar(&numbPtr, "numb", 0, "an int")

然后,如果您不提供這些作為 cli 參數(shù),您的測(cè)試將不會(huì)通過(guò):

.\logdata.exe -fork

將輸出:

fork: true

如果要測(cè)試是否wordnumb作為 cli 參數(shù)提供,請(qǐng)參閱檢查 Go 中是否提供了標(biāo)志。


查看完整回答
反對(duì) 回復(fù) 2022-10-31
?
寶慕林4294392

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

根據(jù)https://pkg.go.dev/flag#StringVar

StringVar 定義了一個(gè)帶有指定名稱、默認(rèn)值和使用字符串的字符串標(biāo)志。參數(shù) p 指向一個(gè)字符串變量,其中存儲(chǔ)標(biāo)志的值。

所以這意味著在你的情況下-"foo"將是默認(rèn)值forwordPtr和for 。42numbPtrfalseforkPtr


查看完整回答
反對(duì) 回復(fù) 2022-10-31
  • 2 回答
  • 0 關(guān)注
  • 138 瀏覽
慕課專欄
更多

添加回答

舉報(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)