面试题答案
一键面试trait CommonTrait {}
struct Parent {
children: Vec<Box<dyn CommonTrait>>,
}
struct Child1;
struct Child2;
impl CommonTrait for Child1 {}
impl CommonTrait for Child2 {}
fn create_parent<'a, 'b>(child1: &'a mut Child1, child2: &'b mut Child2) -> Parent {
let mut children = Vec::new();
children.push(Box::new(child1));
children.push(Box::new(child2));
Parent {
children,
}
}