Golang中的奇怪类型定义语法(name,then type,then string literal)

前端之家收集整理的这篇文章主要介绍了Golang中的奇怪类型定义语法(name,then type,then string literal)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在试图找出如何使用mgo(MongoDB驱动程序Go),我遇到了这个struct声明:
type Something struct {
    Id bson.ObjectId "_id,omitempty"
    Name string
}

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

我的问题不在于mgo驱动程序的功能
但是关于这个奇怪的< name> <类型> < string_literal>句法。

我在Go规格上找不到任何东西,我也不知道如何google这个。

这在 language specificationStruct types部分解释:

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
07002 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相关文章