Rust1.86才正式稳定trait的upcast,为什么在rust中这个特性实现如此复杂?

2025-06-20 21:00:11

主要是名字起错了,让人对这个功能有了一些不切实际的幻想。

Rust里面su***ype有且只有一种,那就是 相同类型的两个引用,其中一个的生存期完全被另外一个的生存期包含,此时生存期长的那个就是短的那个的su***ype,除此之外没有su***ype这种东西,trait A:B并不是su***ype,只说明A包含有B的成员,并不意味着A和B直接有任何天然的可替代性,所以也不存在“up”cast,它们之间即便存在某种cast操作,也都只是某种hack而非自然规律,…。

Rust1.86才正式稳定trait的upcast,为什么在rust中这个特性实现如此复杂?
广告位810*200
相关阅读
很好奇,组NAS的玩家是如何解决上传速率的问题?

很好奇,组NAS的玩家是如何解决上传速率的问题?

对于我来说,速率不是最主要的,反而可连接性是最重要的。 我...

2025-06-25
腰椎间盘突出有多痛苦?

腰椎间盘突出有多痛苦?

腰突的痛苦50%来自身体,50%来自内心,有时内心的痛苦甚至...

2025-06-25
2025 年有哪些值得关注的开源项目?

2025 年有哪些值得关注的开源项目?

这里不得不毛遂自荐一下我写的 OpenMCP 了。 ***...

2025-06-25
当初中俄为什么不摧毁朝鲜的核设施,让朝鲜拥有了自己的核武器?

当初中俄为什么不摧毁朝鲜的核设施,让朝鲜拥有了自己的核武器?

因为中国没能力管朝鲜,俄罗斯则并不在意朝鲜有核武器。 军盲...

2025-06-25
我听说Windows12微软就直接重头构建Windows了,就直接重构Win内核了,到底是不是真的?

我听说Windows12微软就直接重头构建Windows了,就直接重构Win内核了,到底是不是真的?

你太瞧不起NT Kernel了,这个内核无疑是有史以来最先进...

2025-06-25