и sub тоже?
use std::ops;
// lets create a struct that only excepts data with + operator overloaded.
#[derive(Debug)]
struct Data<T: ops::Add+ops::Sub> {
slot: T
}
impl<T: ops::Add<Output=T>> ops::Add for Data<T> {
fn add(self, rhs: Self) -> Self::Output {
Self{slot: self.slot+rhs.slot}
}
}
Потому что ты прямо написал, что по определению в Data могут быть только типы, которые умеют в сложение и вычитание
Обсуждают сегодня