OpCodes.Ldelem_I8 Campo
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Carrega o elemento com tipo int64 num índice de array especificado no topo da pilha de avaliação como um int64.
public: static initonly System::Reflection::Emit::OpCode Ldelem_I8;
public static readonly System.Reflection.Emit.OpCode Ldelem_I8;
staticval mutable Ldelem_I8 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldelem_I8 As OpCode
Valor de Campo
Observações
A tabela seguinte lista o formato hexadecimal e assembly da Microsoft Intermediate Language (MSIL) da instrução, juntamente com um breve resumo de referência:
| Formato | Formato de Montagem | Descrição |
|---|---|---|
| 96 | ldelem.i8 | Carrega o elemento com tipo int64 em index no topo da pilha como um int64. |
O comportamento de transição da pilha, por ordem sequencial, é:
Uma referência
arrayde objeto é empurrada para a pilha.Um valor
indexde índice é empurrado para a pilha.indexearraysão extraídos da pilha; o valor armazenado na posiçãoindexemarrayé consultado para cima.O valor é transferido para a pilha.
A ldelem.i8 instrução carrega o valor do elemento com índice index (tipo native int) no array array unidimensional baseado em zero e coloca-o no topo da pilha. Os arrays são objetos e, portanto, representados por um valor de tipo O.
O valor de retorno para ldelem.i8 é int64.
Note que valores inteiros inferiores a 4 bytes são estendidos para int32 (não native int) quando são carregados na pilha de avaliação.
NullReferenceException é lançado se array for uma referência nula.
ArrayTypeMismatchException é lançado se array não detiver elementos do tipo requerido.
IndexOutOfRangeException é lançado se index for negativo, ou maior do que o limite de array.
O seguinte Emit método de sobrecarga pode usar o ldelem.i8 opcode: