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

如何共享嵌入式结构指针

如何共享嵌入式结构指针

Go
江户川乱折腾 2021-09-10 16:49:30
我有以下代码:具有匿名字段的结构控制器。type controller struct {    *base.Controller    store *data}如您所见,*base.Controller 是匿名字段指针。然后是由 *base.Controller 组成的第二个结构。type expiredError struct {    *base.Controller    local string}我初始化控制器结构如下:c := &controller{base.New(rw, r, false, "controller/account"), nil}c.Title = "Activate account"c.serve()控制器上的 base.Controller 使用 base.New() 函数进行初始化。现在我有控制器方法,它初始化 expiredError 结构,它也应该共享 base.Controller 的指针到 expiredError 的 base.Controller 。func (rcv *controller) validate() error {    ....    // If time for activating account is expired    if time.Now().Unix() > rcv.store.Expired {        // Delete registered user from neo4j        maccount.Delete(rcv.store.Email, rcv.Local)        return &expiredError{base.Controller, rcv.Local}    }    return nil}我这里有一个编译器错误type base.Controller is not an expression
查看完整描述

1 回答

?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

您可以尝试通过提及父类的实例来引用匿名字段:

rcv.Controller

(因为匿名字段的“名称”与字段类型相同)


查看完整回答
反对 回复 2021-09-10
  • 1 回答
  • 0 关注
  • 187 浏览
慕课专栏
更多

添加回答

举报

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