为什么说Go语言的设计是工程先进但学术落后?
为什么Rust的包管理器Cargo这么好用?
媒体称以色列防空成本一晚近 3 亿美元,最多再撑 12 天,美方会支援吗?若无美补给结果会如何?
伊朗称袭击以色列「网络首都」,该地聚集英特尔、微软等多家高科技企业,伊朗为何选择这里?会造成哪些影响?
OpenWrt 能做哪些有趣的事?
为什么海军要单舰满世界溜达呢?

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

发布日期:2025-06-21 16:10:16 浏览次数:0

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

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中这个特性实现如此复杂?