var _ ResponseWriter = &responseWriter{} 是什么意思?-- 检测接口是否实现

"_"  意思是丢弃变量.

               一般检查某个struct是否实现interface的时候用的,因为golang里的接口实现不是侵入式,所以这样可以在编译的时候知道是否实现了自己想要的接口


 
  
  1. package main
  2. type Reader interface {
  3. Read()
  4. }
  5. type Writer interface {
  6. Write()
  7. }
  8. type A struct {
  9. }
  10. func (a A) Read() {
  11. }
  12. var _ Reader = &A{} // 编译通过,确保A实现了 Reader 接口
  13. var _ Writer = &A{} // 编译通不过,A没有实现 Writer 接口
  14. func main() {
  15. }

猜你喜欢

转载自blog.csdn.net/weixin_40592935/article/details/80914177