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

实现切片的接口

实现切片的接口

Go
翻阅古今 2022-08-24 17:05:54
在玩 Go 时,我遇到了一个问题:是否可以为切片实现接口?我无法在任何地方找到答案。我尝试了以下操作但没有成功:type t1 struct {    prop string}type i1 interface {    toString() string}//okfunc (o t1) toString() {    return o.prop}// ERROR invalid receiver []i1 (basic or unnamed type)compiler(InvalidRecv)func (o []i1) toString() {}// ERROR invalid receiver []t1 (basic or unnamed type)compiler(InvalidRecv)func (o []t1) toString() {}
查看完整描述

1 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

不能为切片定义方法。您可以从切片中定义新类型,并为其定义一个方法:


type t1Slice []t1


func (o t1Slice) toString() {

}

然后你可以做:


var arr []t1

t1Slice(arr).toString()


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

添加回答

举报

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