是否可以使用字符串作为函数名称并调用它?
我有一个字符串映射到函数名称
stuff := map[string]string{'keyword','function'}
当使用keyword
时,我想用{2}个参数调用function
stuff['keyword'](arg1,arg2)
但它给了我这个错误:
cannot call non-function key (type string)
有没有办法让我的string
保持string
地图并仍能实现这一目标?
答案 0 :(得分:0)
您使用的地图在语法上无效。你可能想要这样的东西:
stuff := map[string]func(string, string)
然后,您就可以使用字符串键从地图中提取一个函数并调用它:
stuff["keyword"]("foo", "goo")