Я пытаюсь создать структуру, которая содержит список других структур (может быть фиксированный размер, если это помогло)
struct Container<'m> {
contained: Vec<&'m Contained>,
}
struct Contained {
id: u64,
}
impl Container<'_> {
pub fn new<'m>() -> Container<'m> {
Container {
contained: Vec::new()
}
}
pub fn new_contained<'m>(&mut self, id: u64) {
let c = Contained {
id
};
self.contained.push(&c);
^^ lifetime of Contained ends here
}
}
Я вижу, что время жизни Contained заканчивается, но я не вижукак создать структуру с заданным временем жизни.
Есть ли у меня какие-либо альтернативы, которые я пробовал использовать вместо фиксированного размера массива, таким образом Контейнер владеет содержимым массива, но я не могу создать нулевой размермассив для начала.