就是一个半吊子trait的实现Go的interface是一个残废的实现,一开始意图是允许带有一定约束(方法集)的多态。
但是这玩意又不像rust一样是编译期展开的(当然1.18以后把interface用在泛型上可以视作静态trait的一种实现形式),只要参数位上一用到interface就通通逃逸加装箱变成动态派发。
而且Go中interface是隐式实现加不可区分(non-distinguishable)的,什么意思呢? 例如:在rust里,你两个trait(Plugin 和 Builder)里有…。
上一篇:有网友称相机电池不能上飞机了,哪怕是原厂电池只要没有 3C 标志就不行,是真的吗?这规定合理吗?!
下一篇:前端是不是快没了?
