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

2025-06-20 08:55:13

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

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
相关阅读
Python 开发中如何进行文件读写操作?

Python 开发中如何进行文件读写操作?

一、pathlib 新玩法Python 3.4 版本以后,新...

2025-06-19
我国的军工能力可以实现一天5000枚火箭弹连着炸三个月吗?

我国的军工能力可以实现一天5000枚火箭弹连着炸三个月吗?

一天5000枚啊,我给你算个账。 我就给你一枚火箭弹算一吨...

2025-06-19
敢不敢留下一张自拍照让人打分?

敢不敢留下一张自拍照让人打分?

今天爬完楼梯拍的 觉得拍的不错 加个滤镜~ 爬楼40*4=1...

2025-06-19
为什么程序员独爱用Mac进行编程?

为什么程序员独爱用Mac进行编程?

去闲鱼上搜 MacBook Pro M1,都是某互联网大厂满...

2025-06-19
如何评价字节跳动开源的 Netpoll?

如何评价字节跳动开源的 Netpoll?

0 前言不久前曾经对 golang 原生的 net 网络库(...

2025-06-19