400-123-4567

138000000000

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

2025-06-24 04:00:15

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

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

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

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

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

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

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

上一篇 : 腾讯开源的 libco 号称千万级协程支持,那个共享栈模式原理是什么?

下一篇 : 新生儿睡眠不规律,经常日夜颠倒,家长可以通过哪些科学方法帮助宝宝建立良好的睡眠习惯?