OpCodes.Stelem_I 字段

定义

用计算堆栈上的 native int 值替换给定索引处的数组元素。

C#
public static readonly System.Reflection.Emit.OpCode Stelem_I;

字段值

注解

下表列出了指令的十六进制和 Microsoft 中间语言 (MSIL) 程序集格式,以及简短的参考摘要:

格式 程序集格式 说明
9B stelem.i 将提供的索引处的数组元素替换为 native int 堆栈上的 值。

堆栈过渡行为(按顺序排列)为:

  1. 对数组 array的对象引用被推送到堆栈上。

  2. array 元素的有效索引将推送到堆栈上。

  3. 值将推送到堆栈上。

  4. 从堆栈中弹出值、索引和数组引用;值将放入给定索引处的数组元素中。

指令stelem.i将一维数组arraynative int中 元素index的值替换为推送到堆栈上的值。

数组是 对象,因此由 类型的 O值表示。 索引的类型 native int为 。

NullReferenceException 如果 array 是 null 引用,则引发 。

IndexOutOfRangeException 如果 index 为负或大于 的 array边界,则引发 。

ArrayTypeMismatchException 如果未 array 保存所需类型的元素,则会引发 。

以下 Emit 方法重载可以使用 stelem.i opcode:

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0