Go中的方法地图

Fat*_*lan 6 methods go

我有几种方法可以用于某些情况(如Add,Delete等).然而,随着时间的推移,案件的数量正在增加,我的开关箱也越来越长.所以我想我会创建一个方法图,比如Go函数图 ; 这里功能的映射是微不足道的.但是,是否可以在Go中创建方法地图?

当我们有一个方法:

func (f *Foo) Add(a string, b int) { }
Run Code Online (Sandbox Code Playgroud)

下面的语法创建编译时错误:

actions := map[string]func(a, b){
        "add": f.Add(a,b),
}
Run Code Online (Sandbox Code Playgroud)

是否可以在Go中创建方法地图?

zzz*_*zzz 10

是.目前:

actions := map[string]func(a string, b int){
        "add": func(a string, b int) { f.Add(a, b) },
}
Run Code Online (Sandbox Code Playgroud)

后来:看到guelfi提到的go11func文件.