我知道的一种方法是在Rust中提供类型注释是通过声明一个中间变量,以便编译器知道返回类型:
use std::num::Int
let max_usize: usize = Int::max_value();
println!("Max usize: {}", max_usize);
但是如何提供类型注释"内联"?
例如,我不希望以下内容未修改,因为根本没有类型注释,但这是我之后的事情:
use std::num::Int
println!("Max usize: {}", Int::max_value());
我尝试了Int::max_value::<usize>()
,这给了error: too many type parameters provided: expected at most 0 parameter(s), found 1 parameter(s)
- 这是有道理的,因为max_value()
不是通用的。
在Scala中,我会写myFunction(someDog: Animal)
而不是写
val someAnimal: Animal = someDog
myFunction(someAnimal)
Rust中是否有相同的语法?
答案 0 :(得分:4)
像这样:
fn main() {
use std::num::Int;
println!("Max usize: {}", <usize as Int>::max_value());
}