为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Go 的接口中使用函数类型

如何在 Go 的接口中使用函数类型

Go
动漫人物 2022-11-23 10:26:41
我有以下代码type SomeInterface interface {    SomeFunc(int, string)}type IntStringFunc func(int, string)func (f IntStringFunc) SomeFunc(i int, s string) {    f(i, s)}在函数类型 IntStringFunc 上调用方法 SomeFunc 的语法是什么?
查看完整描述

1 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

方法调用语法不依赖于接收者类型,它总是相同的:value.methodName(params).


例如:


var f IntStringFunc = func(i int, s string) {

    fmt.Printf("f(%d, %s)\n", i, s)

}


f.SomeFunc(1, "one")

这将输出(在Go Playground上尝试):


f(1, one)

由于 type off是一个函数类型,你当然也可以这样调用它:


f(1, "one")

这当然会打印相同的内容。


查看完整回答
反对 回复 2022-11-23
  • 1 回答
  • 0 关注
  • 58 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信