如何判断struct的字段已设置? 例如,当未设置“ p”的“ age”字段时,我想保留num默认值-1。
发现这很棘手,因为“ p.age!= nil”的语法不正确,因为“ p.age”只能与float32进行比较,而“ p.age!= float32(0)”也不正确当p.age实际上等于float32(0)时将被忽略。
package main
import "fmt"
type Person struct {
name string
age float32
}
func main() {
p := &Person{name:"apple"}
num := float32(-1)
if p.age != nil { //something like this.
num = p.age
}
fmt.Println(num)
}