为什么rust会考虑将int值分配给float变量作为错误,即使没有缩小值也是如此?
fn main() {
let i: f32 = 1i;
}
最佳答案
在Rust中,所有此类转换必须明确地完成:
fn main() {
let i = 1i as f32;
}
这是一个简单的设计决定。
从
int
到f32
的转换也不是无损的,还有更多的理由需要明确说明这些内容。关于casting - 为什么不将int赋给f32变量进行编译?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24924135/