为什么Rust写个链表都那么难?

 新闻资讯     |      2025-06-20 02:15:16

表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规则(Of course!和Why not?),导致链表这种含有“自指”结构的数据结构无法刻画。

但如果承认指数规则的话,要么回到引用计数垃圾回收的机制,要么手写mfree(Why not?)语句。

但这又回到了老路上,违背了Rust的目标。

但是只要我们提前知道链表的最大长度,那么就能写出来了。

例如:已知链表的最大长度是3,那么我们定义3个类型套一下即可。

问题就出在这里,“链表最大…。

为什么Rust写个链表都那么难?

上一篇:iOS 26 的新设计被吐槽丑,苹果在设计更新时考虑了哪些因素?你对这一设计都有哪些评价?!

下一篇:Rust、Go、Zig、Dart、C3、C++、C,仓颉、moonbit、凹语言哪个语言更有未来?