正如泛型类型可以被约束一样,生命周期(本身也是泛型)也可以使用约束。这里的 :
符号含义略有不同,但 +
的用法相同。请注意以下表达的含义:
T: 'a
:T
中的所有引用必须比生命周期 'a
存活更久。
T: Trait + 'a
:类型 T
必须实现 trait Trait
,并且 T
中的所有引用必须比 'a
存活更久。
下面的例子展示了上述语法在 where
关键字之后的实际应用:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
泛型、泛型中的约束和泛型中的多重约束