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

2025-06-20 21:40:16

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

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
相关阅读
中国的歼-10 在世界上是什么水平?

中国的歼-10 在世界上是什么水平?

大家可以通过以下照片,直观地对比一下歼-10与歼-16的对比...

2025-06-20
为什么linux桌面那么丑?

为什么linux桌面那么丑?

首先,现在的Linux桌面图形界面一点儿也不丑。 。 。 ...

2025-06-20
HTTP/3 解决了什么问题,又引入了什么新问题?

HTTP/3 解决了什么问题,又引入了什么新问题?

HTTP/3 实际上是 QUIC 协议 + HTTP2。 我...

2025-06-20
哪张照片让你觉得刘亦菲美得不可方物?

哪张照片让你觉得刘亦菲美得不可方物?

那自然是刘亦菲打枪图: 这颜值,这发量,这腰身,这曲...

2025-06-20
媒体称以色列防空成本一晚近 3 亿美元,最多再撑 12 天,美方会支援吗?若无美补给结果会如何?

媒体称以色列防空成本一晚近 3 亿美元,最多再撑 12 天,美方会支援吗?若无美补给结果会如何?

伊朗今天只发射了30枚,而且还是压舱地的射程2000公里的国...

2025-06-20