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

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

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


研发人员常常会陷入为不同协议切换调试工具的泥沼,事实上,Ap...
紧身牛仔裤是少有的凸现身材又不会让人觉得低俗的裤子,作为对比...
腰部问题的人十个大概都有七个有,只是轻重度程度不一样。 什...
丸辣,Rosetta2的AVX2支持才刚起步就要被抛弃辣。 ...
谢邀,如果从兴趣层面出发,我觉得找到一些网站学习是可以的,但...
今天,我们来聊聊一个可能被你忽视,而且非常强大的标准 J**...
有三个点需要注意: 1 结果: 积流成江 (Streams ...
这是我基于rust写的一款作业调度软件,支持广播执行作业,定...
我包皮内侧长了个痣,我觉得有必要找皮肤科医生看看,毕竟会摩擦...
当年在西藏当兵,77649部队的。 在整个西藏军区,不敢说是...
