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

在结构中引用自己

在结构中引用自己

Go
慕码人8056858 2021-10-18 10:30:07
假设我有一个像这样的结构类型:type Authorization struct {    Username string    Password string    Handler  func(http.HandlerFunc) http.HandlerFunc}我有一个数组:type Authorizations map[string]*Authorization我希望能够做这样的事情:var auth = Authorizations{    "test": *Authorization{        "someusername",        "somepassword",        self.BasicAuth,    },}假设 self.BasicAuth(显然不起作用)是 Authorization 类型上的一个方法。这样做的语法正确的方法是什么?
查看完整描述

1 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

你不能在它自己的声明中引用一个值。需要先初始化值,然后才能将要使用的方法赋值给Handler。


testAuth := &Authorization{

    Username: "someusername",

    Password: "somepassword",

}

testAuth.Handler = testAuth.HandleFunc


auths := Authorizations{

    "test": testAuth,

}


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

添加回答

举报

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