Go语言结构体如何跨包成为方法的接收者?-灵析社区

kunkun小黑子

在项目中,我定义了平行的文件夹service和dao,如何将dao层的结构体作为service层方法的接收者?

阅读量:383

点赞量:11

问AI
你不能直接对其他包的结构体加方法,必须自己声明一个基于目标结构体的类型或是嵌入目标结构体到你自己的结构体。 //dao.go package dao type A struct { Num int } //service.go package service import "../dao" type serviceA dao.A func (a serviceA) Method() { a.Num++ } type serviceA2 struct { dao.A } func (a serviceA2) Method() { a.Num++ }