_ 的用法疑惑

wi-cuckoo · 2017-11-11 13:57:38 · 1113 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2017-11-11 13:57:38 的主题,其中的信息可能已经有所发展或是发生改变。

var (
    // Ensure Engine implements the interface.
    _ tsdb.Engine = &Engine{}
    // Static objects to prevent small allocs.
    timeBytes              = []byte("time")
    keyFieldSeparatorBytes = []byte(keyFieldSeparator)
)

代码如上, 第一个变量声明那里没见过这种写法,我猜测是防止重复声明 tsdb.Engine 这个变量,因为在 tadb 包里面已经有了。各位怎么看,有知道的还请解答一下


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1113 次点击  
加入收藏 微博
3 回复  |  直到 2017-11-11 15:26:09
buscoop
buscoop · #1 · 7年之前

晕,确保编译器检查代码时,发现tsdb.Engine是否实现了Engine接口,避免运行时发生错误。

wi-cuckoo
wi-cuckoo · #2 · 7年之前
buscoopbuscoop #1 回复

晕,确保编译器检查代码时,发现tsdb.Engine是否实现了Engine接口,避免运行时发生错误。

注释我明白,但是我没找到相关文档说明,所以来问问

wi-cuckoo
wi-cuckoo · #3 · 7年之前
buscoopbuscoop #1 回复

晕,确保编译器检查代码时,发现tsdb.Engine是否实现了Engine接口,避免运行时发生错误。

查了一下 go 断言,明白了,谢谢

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传