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

2025-06-20 12:35:12

关注了这个问题好久,怎么一个回答都没有……那我抛砖引玉吧。

trait upcasting的tracking issue是这个: Tracking issue for dyn upcasting coercion · Issue #65991 · rust-lang/rust 之前看过一个知乎回答讲了实现: rust语言中怎么把子trait转成父trait? 过程本来这个特性都已经稳定了(将在1.76发布): ***s://github***/rust-lang/rust/pull/118133 然而出现了unsound问题: ***s://github***/rust-lang/rust/issues/120222 和 ***s://github***/rust-lang/rust/issues/120217 于是只好回退: …。

Rust1.86才正式稳定trait的upcast,为什么在rust中这个特性实现如此复杂?
广告位810*200
相关阅读
为什么小米造车可以叫小米,而华为不可以用华为品牌造车?

为什么小米造车可以叫小米,而华为不可以用华为品牌造车?

hw是市场上唯一合法的集资公司,每年需要拿出销售额的十分之一...

2025-06-18
怎么才能让孩子在不牺牲睡眠和运动时间的前提下,成绩名列前茅?

怎么才能让孩子在不牺牲睡眠和运动时间的前提下,成绩名列前茅?

我对上初中的小孩有两个要求: 一、每天晚上必须保证有一个小时...

2025-06-18
为什么windows没有类似docker运行机制?

为什么windows没有类似docker运行机制?

Windows 当然支持容器技术,但 Windows 的容器...

2025-06-18
新婚那天晚上你们是怎样度过的?

新婚那天晚上你们是怎样度过的?

我是七五年人,结婚时间是九五年,正好二十岁,老婆大我一岁,是...

2025-06-18
有一个乌克兰的朋友问我,中国人凭什么能享受和平,我该怎么说?

有一个乌克兰的朋友问我,中国人凭什么能享受和平,我该怎么说?

你这么告诉他: 你们应该庆幸我们热爱和平, 14亿人口加上完...

2025-06-18