为什么rust会考虑将int值分配给float变量作为错误,即使没有缩小值也是如此?

fn main() {
   let i: f32 = 1i;
}

最佳答案

在Rust中,所有此类转换必须明确地完成:

fn main() {
    let i = 1i as f32;
}

这是一个简单的设计决定。

intf32的转换也不是无损的,还有更多的理由需要明确说明这些内容。

关于casting - 为什么不将int赋给f32变量进行编译?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24924135/

10-12 20:43