我列出了书中的代码" Go in Go"。 我测试了它,但它没有奏效。
error: "not enough arguments in call to BitFlag.String"
Goplayground代码:http://play.golang.org/p/FG23LdS_xK
type BitFlag int
func main() {
flag := Active | Send
BitFlag.String();
}
func (flag BitFlag) String() string {
...
}
为什么我会看到此错误消息?
答案 0 :(得分:0)
您需要在BitFlag
(此处为' flag
')的实例上调用字符串,而不是BitFlag
类型本身。
flag := Active | Send
fmt.Println(strconv.Itoa(int(flag)))
fmt.Println(flag.String())
输出:
3
3(Active|Send)