我正在更新一些使用智能指针和其他内存管理代码的旧 Rust 代码,这些代码在版本 1 发布之前已被弃用和删除。
是否可以直接替代旧的智能指针之类的东西,还是使用 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};
}
Run Code Online (Sandbox Code Playgroud)
和
fn firstMethod() {
let memblock: @int = @256;
secondMethod(memblock);
println!(“%d”, *memblock);
}
fn secondMethod(memblock: @int) {
let secMemblock: @int = memblock;
}
Run Code Online (Sandbox Code Playgroud)
这在 1.0 之前可以正常工作,但现在无法构建。
rust ×1