结构文字中的未知字段



>我正在尝试创建一个结构,它给了我一个错误,告诉我该字段未知。

我尝试初始化的结构是:

package yelk
type PhoneOptions struct {
    phone string
    cc    string
    lang  string
}

我正在尝试像这样初始化cli.go PhoneOptions结构:

number := os.Args[1]
phoneOptions := yelk.PhoneOptions{phone: number}

我确实go run cli.go 5555555555但它给了我一个错误

./cli.go:29: unknown yelk.PhoneOptions field 'phone' in struct literal

我看到的所有带有此错误的 StackOverflow 帖子似乎都来自嵌套结构。我想知道我做错了什么。 如果我只是尝试在其上运行go buildcli.go会给出此错误,因此我认为这不是我一直在运行的输入。

知道为什么会这样吗?

以小写字符开头的字段是包内部的,不会公开,如果要从另一个包引用该字段,则需要以大写字符开头,例如。

package yelk
type PhoneOptions struct {
    Phone string
    Cc    string
    Lang  string
}

然后

number := os.Args[1]
phoneOptions := yelk.PhoneOptions{Phone: number}

最新更新