var _ HelloServiceInterface = (*HelloServiceClient)(nil)
,其中HelloServiceClient
是一个结构体,另外一个自然是一个interface。代码的作者称这行代码要求后面的结构体必须实现前面的接口,不然会出现编译错误。
另外有类似的语句
//T is a struct var _ I = T{} // Verify that T implements I. var _ I = (*T)(nil) // Verify that *T implements I.