我想根据if / else语句将字符串设置为两个中的一个:
var output string
password, ok := m["password"]
if ok {
output := runcmd("connect.sh "+ssid+" "+password)
} else {
output := runcmd("connect.sh "+ssid)
}
fmt.Println(output)
在编译期间,我回来了:
输出已声明且未使用
我明白这是因为output
是ok { ... }
中的局部变量,这样做的正确方法是什么?
还尝试使用Output
的资本,因为我必须这样做才能使struct属性可以访问。
在:
声明中删除=
之前的if/else
。
在:=
中使用if statement
和上面声明的变量,这意味着你重新声明该范围内的变量。如果你将使用=
这意味着分配到已经声明的变量output
。
在这里阅读:Short variable declarations vs Assignmets