5
我有一個結構,有時我靜態實例化,有時我想用戶在堆上分配。是否可以允許兩個參數作爲一個函數?允許靜態變量和框作爲函數參數嗎?
pub struct MyData {
x: i32
}
static ALLOCATED_STATICALLY: MyData = MyData {x: 1};
// what should my signature be?
fn use_data(instance: Box<MyData>) {
println!("{}", instance.x);
}
fn main() {
use_data(Box::new(MyData{x: 2}));
// this doesn't work currently
use_data(ALLOCATED_STATICALLY);
}
說「參考」而不是「指針」可能會更好。後者讓我想到一個*原始指針*'* const T'。 – Shepmaster