📜  Golang 中的 flag.Bool()函数示例(1)

📅  最后修改于: 2023-12-03 14:41:33.842000             🧑  作者: Mango

Golang 中的 flag.Bool()函数示例

在 Golang 中,flag 包提供了一种命令行选项和参数解析的机制。通过使用 flag,可以方便地在命令行中传递参数并定制程序的行为。

flag.Bool() 函数是 flag 包中的一个函数,用于解析 bool 类型的命令行选项。下面是一个示例程序,演示了如何使用 flag.Bool() 函数来解析命令行参数:

package main

import (
    "flag"
    "fmt"
)

func main() {
    // 定义一个 bool 类型的命令行选项
    var verbose bool

    // 解析命令行参数
    flag.BoolVar(&verbose, "verbose", false, "Print verbose logs")

    // 输出命令行选项的值
    fmt.Printf("verbose: %v\n", verbose)
}

以上程序定义了一个 bool 类型的命令行选项 verbose,然后使用 flag.BoolVar() 函数进行解析。该函数的第一个参数是解析后的结果的地址,第二个参数是命令行选项的名称,第三个参数是命令行选项的默认值,第四个参数是对命令行选项的简短描述。

在命令行中运行该程序时,可以传递 -verbose 参数来开启 verbose 模式。例如:

$ go run main.go -verbose

以上命令会输出 verbose: true。

如果不传递 -verbose 参数,则 verbose 模式关闭,输出 verbose: false。

flag.Bool() 函数是 flag 包中的一个常用函数,不仅可以解析 bool 类型的命令行选项,还可以解析其他类型的命令行选项。如果需要解析非 bool 类型的命令行选项,请参考 flag 包中的其他函数。