判断golang接口是否实现

2020-09-24  本文已影响0人  Luxin23

笔者在阅读一些Golang代码的时候。常常会遇到一些以下写法

type IRouter interface {
 IRoutes
 Group(string, ...HandlerFunc) *RouterGroup
}

type RouterGroup struct {
 Handlers HandlersChain
 basePath string
 engine   *Engine
 root     bool
}


var _ IRouter = &RouterGroup{}

其实这个是为了验证某某接口是否被实现了?

对内存的占用,还有看到这种写法的

var _ Tester = (*Test)(nil)

这种写法区别在于:new是编译的时候检查,这样写是运行的时候检查。

上一篇 下一篇

猜你喜欢

热点阅读