表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规则(Of course!和Why not?),导致链表这种含有“自指”结构的数据结构无法刻画。
但如果承认指数规则的话,要么回到引用计数垃圾回收的机制,要么手写mfree(Why not?)语句。
但这又回到了老路上,违背了Rust的目标。
但是只要我们提前知道链表的最大长度,那么就能写出来了。
例如:已知链表的最大长度是3,那么我们定义3个类型套一下即可。
问题就出在这里,“链表最大…。
表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规则(Of course!和Why not?),导致链表这种含有“自指”结构的数据结构无法刻画。
但如果承认指数规则的话,要么回到引用计数垃圾回收的机制,要么手写mfree(Why not?)语句。
但这又回到了老路上,违背了Rust的目标。
但是只要我们提前知道链表的最大长度,那么就能写出来了。
例如:已知链表的最大长度是3,那么我们定义3个类型套一下即可。
问题就出在这里,“链表最大…。
2025.6.22:趁着我这个回答又有那么多人点赞,就又来更...
2025-06-24阅读全文 >>就在近日,许久不曾现身在大众面前的杨颖因为参加了一场活动而引...
2025-06-23阅读全文 >>最好用、完全免费、能直接上手的软件还是Nmap。 扫描完成...
2025-06-24阅读全文 >>裸辞到现在七年了,后面一辈子都不会去上班了。 亲身经历的人...
2025-06-24阅读全文 >>我们需要谈谈困扰我几个月的事情。 我一直看到独立黑客和初创公...
2025-06-24阅读全文 >>