在Jim Blandy和Jason Orendorff的《Programming Rust》一书的第51页中,作者指出:
为什么是“几乎”?Rust会执行哪些隐式数字转换?与C和C++不同,Rust几乎不会隐式执行任何数字转换。
为什么是“几乎”?Rust会执行哪些隐式数字转换?与C和C++不同,Rust几乎不会隐式执行任何数字转换。
像上面的评论一样,我不知道是否有这种隐式转换的例子,但是Rust by example书中提到了以下关于type casts的内容:
Rust在原始类型之间不提供隐式类型转换(强制转换)。但是,可以使用
as
关键字执行显式类型转换(转换)。
有一个Pre-RFC,在其中更详细地讨论了此主题,展示了关于Rust应该/不应该拥有此功能的正反论点。
有关更多信息,请查看From and Into特征。
let a: u8 = 1;
自动将1
转换为u8
(“转换”加引号,因为严格来说它不是一个转换,但乍一看可能会这样认为)。 - Jmb