use std::alloc::{alloc, Layout};
fn main() {
// 假设 lvhBufferPtr 指向一段合法的 Rust 分配的内存
let length = 10;
let capacity = 10;
// 分配内存(模拟已有指针的场景)
let lvhBufferPtr = unsafe {
let layout = Layout::array::<u8>(capacity).unwrap();
alloc(layout) as *mut u8
};
// 将指针绑定到 Vec(不拷贝数据)
let lvBuffer = unsafe {
// 参数:指针、长度、容量
Vec::from_raw_parts(lvhBufferPtr, length, capacity)
};
// 此后,lvBuffer 拥有该内存,不可再使用 lvhBufferPtr
// 当 lvBuffer 被 drop 时,内存会被自动释放
}