為什么我不能在同一個結構中存儲值和對該值的引用?我有一個值,我想在我自己的類型中存儲該值以及對該值內部內容的引用:struct Thing {
count: u32,}struct Combined<'a>(Thing, &'a u32);fn make_combined<'a>() -> Combined<'a> {
let thing = Thing { count: 42 };
Combined(thing, &thing.count)}有時候,我有一個值,我想在同一個結構中存儲該值和對該值的引用:struct Combined<'a>(Thing, &'a Thing);fn make_combined<'a>() -> Combined<'a> {
let thing = Thing::new();
Combined(thing, &thing)}有時,我甚至沒有參考該值,我得到同樣的錯誤:struct Combined<'a>(Parent, Child<'a>);fn make_combined<'a>() -> Combined<'a> {
let parent = Parent::new();
let child = parent.child();
Combined(parent, child)}在每種情況下,我都會收到錯誤,其中一個值“活不夠長”。這個錯誤是什么意思?
添加回答
舉報
0/150
提交
取消