Rust 函数模板使用例子
最基本的模板语法
fn template_fn<F>(mut num: F) -> F{
num
}
fn main() {
println!("{}",template_fn(2));
println!("{}",template_fn(2.0));
println!("{}",template_fn("123"));
println!("{}",template_fn(std::string::String::from("456")));
}
稍微加点操作
fn template_fn<F:std::ops::Add<Output=F> + std::convert::From<i32> >(mut num: F) -> F{
num = num + 2.into();
num
}
fn main() {
println!("{}",template_fn(2));
println!("{}",template_fn(2.0));
}