初面网初面网

泛型

// std::cmp::PartialOrd 是一个trait,用于比较两个值是否相等。在此处意味着,T的类型被限定为PartialOrd trait。
fn compare<T: std::cmp::PartialOrd>(a:T,b:T) -> T{
  if a>b{
    a
  } else {
    b
  }
}

fn main() {
  let num = compare(2,8);
  print!("{}", num);
}

Trait

Trait告诉Rust编辑器某种类型具有哪些并且可以与其他类型共享的功能。它抽象地定义共享行为。

Trait bounds,约束,泛型类型参数指定为实现了特定行为的类型

跟接口interface类似

// 定义
pub trait Summary{
  fn summarize(&self) -> String;
}

更新于 2026/6/10