在特征TraitA
也被实现的情况下,是否可以定义特征TraitB
的功能/方法fun_b
的默认实现?
下面我定义了一个带有超级特征TraitA
的额外特征TraitBDerived
,但我希望这个潜在的默认实现是透明的,因为不需要使用另一个特征.
trait TraitA {
fn fun_a() -> String;
}
trait TraitB {
fn fun_b() -> String;
}
trait TraitBDerived: crate::TraitA {
fn fun_b() -> String {
String::from("prefix ").add(&Self::fun_a())
}
}