在Golang 中取得值清單作為標誌
在Golang 中,標準標誌包提供了從指令解析標誌的功能line,但它本質上僅支援基本類型,例如字串、整數和布林值。要將值清單作為標誌處理,可以實作自訂 flag.Value 類型並利用 flag.Var() 來綁定它。
下面提供了一個範例實作:
import ( "flag" "fmt" ) type arrayFlags []string // String is a required implementation of the flag.Value interface func (i *arrayFlags) String() string { return fmt.Sprintf("%v", *i) } // Set is another required implementation of the flag.Value interface func (i *arrayFlags) Set(value string) error { *i = append(*i, value) return nil } var myFlags arrayFlags func main() { flag.Var(&myFlags, "list1", "Some description for this parameter.") flag.Parse() }
這個自訂的flag型別可以用來傳遞多個flag值,例如:
go run your_file.go --list1 value1 --list1 value2
總之,透過實作自訂的flag.Value類型並利用flag.Var(),Golang允許開發者將值列表解析為標誌,為命令列參數處理提供更大的靈活性。
以上是如何在 Golang 中將值列表解析為標誌?的詳細內容。更多資訊請關注PHP中文網其他相關文章!