一尘不染

对go语法感到困惑

go

与此代码有点混淆。

var _ QueryAppender = (*selectQuery)(nil)

我在pg-go
仓库中找到了这段代码,不知道为什么这样QueryAppender声明。请解释一下用这种方式声明变量的用例是什么。


阅读 218

收藏
2020-07-02

共1个答案

一尘不染

这在运行时不会执行任何操作,但是除非*selectQuery类型满足接口要求QueryAppender,否则编译将失败。这是一种静态断言。

2020-07-02