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

在 go 中使用 struct 作为包装器

在 go 中使用 struct 作为包装器

Go
慕桂英3389331 2022-07-11 15:31:58
如何包装redis.Client到我的struct? 我有那个代码并给我一个错误package mainimport (    "github.com/go-redis/redis")var cache *RedisCache// RedisCache structtype RedisCache struct {    *redis.Client}func initCache() *RedisCache {    if cache == nil {        cache = redis.NewClient(&redis.Options{           Addr:     "localhost:6379",            Password: "",            DB:       0,        })    }    return cache}cannot use redis.NewClient(&redis.Options literal) (type *redis.Client) as type *RedisCache in assignment有一些方法可以转换该属性吗?
查看完整描述

1 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

redis.NewClient()返回一个类型的值*redis.Client。使用复合文字来创建您的值,RedisCache您可以将其分配给cache:


func initCache() *RedisCache {

    if cache == nil {

        client := redis.NewClient(&redis.Options{

            Addr:     "localhost:6379",

            Password: "",

            DB:       0,

        })

        cache = &RedisCache{Client: client}

    }


    return cache

}


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

添加回答

举报

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