有什么区别
type CMoves = Vec<Move>;
和
struct CMoves(Vec<Move>);
我知道我可以用第二个实现特征,但我不能用第一个特征,因为Vec是在我的箱子之外定义的。还有其他差异,例如内存表示吗?
Vec
类型别名就是别名。纯语法糖,与语义无关。对于所有意图和目的,您可以将所有别名替换为别名。
另一方面,元组结构是一个完全独立的类型,所有这些都需要:
因此,这两者并不相同。