gpt4 book ai didi

go - Golang 中奇怪的类型定义语法(名称,然后是类型,然后是字符串文字)

转载 作者:IT老高 更新时间:2023-10-28 13:00:24 27 4
gpt4 key购买 nike

我一直在尝试了解如何使用 mgo(Go 的 MongoDB 驱动程序),我遇到了这个结构声明:

type Something struct {
Id bson.ObjectId "_id,omitempty"
Name string
}

我不太了解第一个元素 (Id) 的语法。我知道它被声明为类型 bson.ObjectId ,但是字符串文字在那里做什么?

我的问题不是关于 mgo 驱动程序的功能,
但是关于这个奇怪的<name> <type> <string_literal>语法。

我在 Go 规范上找不到任何东西,我也不知道如何用谷歌搜索。

最佳答案

Struct types 中有解释language specification 的部分:

A field declaration may be followed by an optional string literal tag, which becomes an attribute for all the fields in the corresponding field declaration. The tags are made visible through a reflection interface but are otherwise ignored.

// A struct corresponding to the TimeStamp protocol buffer.
// The tag strings define the protocol buffer field numbers.
struct {
microsec uint64 "field 1"
serverIP6 uint64 "field 2"
process string "field 3"
}

关于go - Golang 中奇怪的类型定义语法(名称,然后是类型,然后是字符串文字),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11475917/

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