gpt4 book ai didi

unicode - 不能引用未导出的名称 m.β

转载 作者:IT王子 更新时间:2023-10-29 01:11:00 27 4
gpt4 key购买 nike

看看这两个简单的包:

package m
const β = 1

package main
import ("m";"fmt")
func main() {
fmt.Println(m.β)
}

当我尝试编译它们时出现此错误:

$ GOPATH=`pwd` go run a.go 
# command-line-arguments
./a.go:4: cannot refer to unexported name m.β
./a.go:4: undefined: m.β

为什么?我尝试将两个包中的 β 替换为 B,它起作用了,但我在这里尝试使用正确的符号。也许出于某种原因,这两个包都使用了同形文字或不同的编码?

最佳答案

go 规范说,如果

the first character of the identifier's name is a Unicode upper case letter (Unicode class "Lu")

https://golang.org/ref/spec#Exported_identifiers

func main() {
fmt.Println(unicode.IsUpper('β'))
}

返回

false

http://play.golang.org/p/6KxF5-Cq8P

关于unicode - 不能引用未导出的名称 m.β,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25517826/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com