关于Rust中原始类型的更好的算术

时间:2014-11-26 12:52:08

标签: casting rust integer-arithmetic

是否有更好的方法在不同的原始类型上进行算术运算(使用自动升级)而不是显式转换和解包?

例如,如果:

let a: u8 = 1;
let b: u16 = 2;
let c: u32 = 3;

我可以以某种方式摆脱所有演员:

let total: u64 = a.to_u64().unwrap() + b.to_u64().unwrap() + c.to_u64().unwrap();

1 个答案:

答案 0 :(得分:5)

是的,您可以使用as

let total: u64 = a as u64 + b as u64 + c as u64;

有关类型转换的更多信息:http://doc.rust-lang.org/reference.html#type-cast-expressions