C# 编程/关键字/stackalloc
外观
< C Sharp 编程 | 关键字
关键字stackalloc
用于不安全的代码环境中,在堆栈上分配内存块。
int* fib = stackalloc int[100];
在上面的示例中,在堆栈上分配了一个足够容纳 100 个 int 类型元素的内存块,而不是堆;块的地址存储在指针 fib 中。此内存不受垃圾回收的控制,因此不必固定(通过 fixed)。内存块的生命周期仅限于定义它的方法的生命周期(在方法返回之前无法释放内存)。
stackalloc
仅在本地变量初始化程序中有效。
由于涉及Pointer
类型,stackalloc
需要不安全的上下文。请参阅不安全代码和指针。
stackalloc
类似于 C 运行时库中的_alloca
。
注意* - 来自 MSDN
C# 关键字 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
特殊 C# 标识符(上下文关键字) | |||||||||||||||
| |||||||||||||||
上下文关键字(用于查询) | |||||||||||||||
|