我正在更新一些使用智能指針和其他內存管理代碼的舊Rust代碼,這些代碼在版本1發佈之前已被棄用和刪除。什麼是Rust 1.0之前存在的智能指針的替代品?
有沒有直接替換舊的智能指針之類的東西還是使用Box之類的東西來分配內存更好?
我有這樣的代碼(這是非常簡單!)
struct my_rectangle {
x: i32,
y: i32,
length: i32,
breadth: i32,
}
fn allocate_rect() {
let x: ~my_rectangle = ~my_rectangle{x: 5, y: 5, length: 25, breadth:15};
}
和
fn firstMethod() {
let memblock: @int = @256;
secondMethod(memblock);
println!(「%d」, *memblock);
}
fn secondMethod(memblock: @int) {
let secMemblock: @int = memblock;
}
這工作之前1.0罰款,但現在無法建立。