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

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

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


最近一直在捣鼓 uni***+vue3跨端开发,花了两周开发...
我在写,同时我只能说,这东西用上了就想重写别的语言的项目,配...
感觉这个回答下的答主,基本没有同时熟悉xmake/cmake...
本内容是对知名性能评测博主 Anton Putra Ngin...
最喜欢开发端侧模型以及做隐私计算的公司必定是电子设备厂家,所...
很多人搞乱了一个事情, 商用和自用的区别。 还有回答说创业...
翻译说明Linux内核开发人员 Moon Hee Lee 在...
先从水电站的梯级规划来说,葛洲坝工程是万里长江上建设的第一座...
有一片沙滩。 有人愿意花十年时间,投入几百亿研究沙子,然后...
婆婆视角: 我是一个农村的女人,生了一个儿子, 含辛茹苦地把...
