3
我从camlistore(http://code.google.com/p/camlistore/source/browse/pkg/cacher/cacher.go)看到以下语句。golang接口符合性编译类型检查
据我所知,没有创建变量和语句确保CachingFether实现StreamingFetcher和SeekFetcher的公共职能编译器检查。 RHS部分使用带有nil参数的指针构造函数语法。 Go语言中这个语法意味着什么?
我很好奇为什么检查是必要的。在我看来,如果他们真的/使用过/这些值,编译器会做检查吗?我能想到的唯一解释是他们使用'unsafe'软件包,并且他们将执行他们希望编译器无论如何检查的非检查操作。但他们不会在该文件中导入“不安全”。有任何想法吗? – joshlf
这是一个静态(编译时)检查RHS类型是否满足LHS接口。通过这种检查,对RHS方法集的意外更改立即被编译器拒绝。 – zzzz