广东洪水,灾民呼吁不要捐款为什么?
为什么管理一严,员工就走人?
如果 Rust 在 90 年代就被发明出来,那么会对软件行业造成怎样的影响?
如何看待Scout与前东家EDG官司纠纷败诉,二审被判偿还3341万及利息?
要想完全放弃Windows操作系统而使用 Linux需要多少勇气?
为什么管理一严,员工就走人?

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

发布日期:2025-06-26 06:15:14 浏览次数: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中这个特性实现如此复杂?