rust中的pin是不是一个失败的设计?

 rust中的pin是不是一个失败的设计?_珠海横琴新区鑫威企业管理有限公司章程记载的经营范围企业管理咨询服务企业科技创新服务人才资源咨询    |      2025-06-18 00:15:11

不是。

太长不看版:“是否可以移动”应该是位置的特性,而不是类型的特性(来自Without Boats 的文章《 Pinned places 》)。

Rust 默认所有类型都是可移动的,也就是说,任何值的所有权都可以被转移到其它位置,因此必须使用 Pin 来证明其包裹的指针所指的值不会被转移到其它位置。

如果不考虑向后兼容,重新设计rust语言,很多人认为更好的设计应该是:所有类型都默认应该是不可移动的,除非它有Move特性。

这样的话,一个类型 T…。

rust中的pin是不是一个失败的设计?