当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust alloc用法及代码示例


本文简要介绍rust语言中 Function std::alloc::alloc 的用法。

用法

pub unsafe fn alloc(layout: Layout) -> *mut u8

使用全局分配器分配内存。

此函数将调用转发到使用 #[global_allocator] 属性注册的分配器的 GlobalAlloc::alloc 方法(如果有的话),或者 std 板条箱的默认值。

当它和 Allocator trait 变得稳定时,预计此函数将被弃用,取而代之的是 Global 类型的alloc 方法。

安全性

GlobalAlloc::alloc

例子

use std::alloc::{alloc, dealloc, Layout};

unsafe {
    let layout = Layout::new::<u16>();
    let ptr = alloc(layout);

    *(ptr as *mut u16) = 42;
    assert_eq!(*(ptr as *mut u16), 42);

    dealloc(ptr, layout);
}

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function std::alloc::alloc。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。