2 回答

TA貢獻1804條經驗 獲得超2個贊
我們可以創建一個帶有函數及其參數的結構,而不是使用函數創建映射
// Create a function type which takes desired params and return type
type myFunc func(interface{}, interface{})(bool) // Assuming return type as bool
// Create a struct
type workerStruct struct {
WorkFunc myFunc
Arg1 interface{}
Arg2 interface{}
}
使用帶有函數和參數的上述結構作為映射的值
funcMap := map[string]workerStruct{}
myStruct := workerStruct {
WorkFunc : Operand, // This would your input function
Arg1 : myarg1,
Arg2 : myarg2,
}
funcMap["&"] = myStruct

TA貢獻2019條經驗 獲得超9個贊
你只需要初始化你的結構:
o := Operand{
Arg1: false,
Arg2: true,
}
var funcMap = map[string]func() bool {
"&" : o.And,
}
- 2 回答
- 0 關注
- 111 瀏覽
添加回答
舉報