gpt4 book ai didi

go - 类似于 Go 中的 .net 属性

转载 作者:IT王子 更新时间:2023-10-29 00:39:40 25 4
gpt4 key购买 nike

什么类似于.net attributes在去浪。

或者如何实现?

最佳答案

也许最相似的机制是 Struct Tags。不是最优雅的,但它们可以在运行时进行评估并提供结构成员的元数据。

来自反射包文档:type StructTag

例如,它们用于自定义元素名称的 JSON 和 XML 编码。

例如,使用标准的 json 包,假设我有一个结构体,其中有一个我不想出现在我的 JSON 中的字段,另一个我只想在它不为空时出现的字段,以及我想要的第三个字段使用与结构的内部名称不同的名称来引用。以下是您如何使用标签指定它:

type Foo struct {
Bar string `json:"-"` //will not appear in the JSON serialization at all
Baz string `json:",omitempty"` //will only appear in the json if not empty
Gaz string `json:"fuzz"` //will appear with the name fuzz, not Gaz
}

我用它来记录和验证 REST API 调用中的参数,以及其他用途。

如果保留“可选空格分隔的键:“值””语法,则可以使用 StructTag 的 Get 方法访问各个键的值,如 example 中所示.

关于go - 类似于 Go 中的 .net 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23943162/

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