特征和生锈
Traits and Rust
正在查看一些 Rust 代码,并注意到以下代码块:
pub trait Foo: Bar {
// methods omitted
}
我想知道这段代码到底做了什么。我熟悉这个:
impl Foo for Struct {
/// methods omitted
}
但以前从未遇到过前者。
该块定义了一个名为 Foo
的新特征,然后允许您在各种地方使用该特征,例如您发布的 impl
块。 : Bar
部分表示任何实现 Foo
的类型也必须实现 Bar
特性。
正在查看一些 Rust 代码,并注意到以下代码块:
pub trait Foo: Bar {
// methods omitted
}
我想知道这段代码到底做了什么。我熟悉这个:
impl Foo for Struct {
/// methods omitted
}
但以前从未遇到过前者。
该块定义了一个名为 Foo
的新特征,然后允许您在各种地方使用该特征,例如您发布的 impl
块。 : Bar
部分表示任何实现 Foo
的类型也必须实现 Bar
特性。