作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
除了自定义字段之外,我还需要一个接受名称/值对的数据结构。我怎样才能定义这样的结构?
例如
type mybasket struct {
Coupons string
Amount int
....... // string or int
}
最佳答案
我建议在类型上定义 setter
和 getter
方法,并将值存储在结构的 slice 中。
例如:
package main
import "fmt"
type kv struct {
k, v string
}
type mybasket struct {
Coupons string
Amount int
Contents []kv
}
func (t *mybasket) SetContents(c ...kv) {
t.Contents = c
return
}
func (t *mybasket) GetContents() []kv {
return t.Contents
}
func main() {
T := &mybasket{"couponlist", 100, []kv{}} // New Basket
kvs := []kv{{"foo", "bar"}, {"baz", "bat"}} // Contents
T.SetContents(kvs...) // Set Contents
fmt.Printf("%v", T.GetContents()) // Get Contents
}
打印:
[{foo bar} {baz bat}]
关于types - 如何在结构上定义可变字段?去,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27098062/
我是一名优秀的程序员,十分优秀!