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

表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规则(Of course!和Why not?),导致链表这种含有“自指”结构的数据结构无法刻画。
但如果承认指数规则的话,要么回到引用计数垃圾回收的机制,要么手写mfree(Why not?)语句。
但这又回到了老路上,违背了Rust的目标。
但是只要我们提前知道链表的最大长度,那么就能写出来了。
例如:已知链表的最大长度是3,那么我们定义3个类型套一下即可。
问题就出在这里,“链表最大…。

表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规则(Of course!和Why not?),导致链表这种含有“自指”结构的数据结构无法刻画。
但如果承认指数规则的话,要么回到引用计数垃圾回收的机制,要么手写mfree(Why not?)语句。
但这又回到了老路上,违背了Rust的目标。
但是只要我们提前知道链表的最大长度,那么就能写出来了。
例如:已知链表的最大长度是3,那么我们定义3个类型套一下即可。
问题就出在这里,“链表最大…。


刷抖音,看到一套大理的别墅,主人着急脱手,房产面积200平,...
最好用、完全免费、能直接上手的软件还是Nmap。 扫描完成...
海贼王的基本盘崩了 要知道,海贼王一开始就是一个小短篇,这个...
我前司搞过一次,让我用Python统计gitlab提交代码量...
你看,我在这个回答中说: 女生真正的完美身材是什么样子? -...
嘿,兄弟们!今天你焦虑了吗? 反正我朋友圈的 JS 开发者群...
没什么缺陷,唯一的缺陷就是喜欢动态化的魔怔人太多,当然官方特...
昨天的 GCP 全球宕机事故报告出了,给大家解读下。 从 ...
最近半年一直在用…… 快是真的快,写go和rust的体验极好...
如果美国亲自开战,那将会改变未来20-30年的全球局势。 ...
