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

2025-06-18 00:15:11

不是。

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

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

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

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

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

上一篇 : 如何看待小米 5 月 22 日发布 3nm 自研芯片「玄戒 O1 」?性能表现怎样?

下一篇 : MySQL 常用存储引擎区别总结有哪些?