数组数组中特定位置的类型?

我是 Go 的新手,我正在尝试用这个一般方面构建一个函数:


mapOfResults = ThingDoer([

  ["One",    int,    -1,    true],

  ["Flying", string, "",    true],

  ["Banana", bool,   false, true]

])

但我什至无法弄清楚它的签名(签名甚至是 Go 中它的专有名词吗?它所有参数的定义等)。


我说的是这个结构:


func ThingDoer(config ThisIsWhatICannotFigure) map[string]Results {

    // the body of my function

}

如何定义此类参数的类型?


翻过高山走不出你
浏览 91回答 1
1回答

弑天下

试试这个: type ConfigItem struct {    Name string    Value interface{}    SomethingElse bool }mapOfResults = ThingDoer([]ConfigItem{  {"One",    -1,    true},  {"Flying", "",    true},  {"Banana", false, true},})ThingDoer 可以使用类型开关来确定值类型:func ThingDoer(config []ConfigItem) map[foo]bar {    for _, item := range config {      switch v := item.Value.(type) {      case int:        // v is int      case bool:        // v is bool      case string:        // v is string      }    } }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go