var _ ipc.Server = &CenterServer{}//// 确认实现了Server接口
var _ ipc.Server = &CenterServer{}//// 确认实现了Server接口
《GO语言编程》有一段这样的代码
_ 符号的作用是什么,类似于这样检查是是为了检查是否实现了某个接口的,会不会真的去创建一个CenterServer这样的东西。如果写大量这样检验的代码是不是会创建大量的无用的结构。
还是说它并不会去创建对象,只是用来检验是否实现接口
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不会创建多余的东西。
这里是相关的spec:http://golang.org/ref/spec#Declarations_and_scope
注意里面讲的关于blank identify的部分:
The blank identifier may be used like any other identifier in a declaration, but it does not introduce a binding and thus is not declared.