golang这种语法是什么意思?

下面golang这种语法是什么意思?大佬帮解释一下,谢谢

//定义函数类型
type handler func(name string) int
 
//实现函数类型方法
func (h handler) add(name string) int {
    return h(name) + 10
}
阅读 2.8k
2 个回答
//定义函数类型
type handler func(name string) int
 
//实现函数类型方法
func (h handler) add(name string) int {
    return h(name) + 10
}

定义一个“函数对象”,handler类型的变量是一个函数

其使用方法是

package main

import (
    "fmt"
)

type handler func(name string) int

//实现函数类型方法
func (h handler) add(name string) int {
    return h(name) + 10
}
func main() {
    var hello handler = func(name string) int {
        return 666
    }
    result := hello.add("还有这种操作")
    fmt.Println(result)
}

你把type handler当成个类型
那Add就是这个类型的方法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题