Partilhar via


OpCodes.Ldvirtftn Campo

Definição

Efetua o push de um ponteiro não gerenciado (tipo native int) para o código nativo implementando um método virtual específico associado ao objeto especificado para a pilha de avaliação.

public: static initonly System::Reflection::Emit::OpCode Ldvirtftn;
public static readonly System.Reflection.Emit.OpCode Ldvirtftn;
 staticval mutable Ldvirtftn : System.Reflection.Emit.OpCode
Public Shared ReadOnly Ldvirtftn As OpCode 

Valor do campo

Comentários

A tabela a seguir lista o formato de assembly hexadecimal e MSIL (Microsoft Intermediate Language) da instrução, juntamente com um breve resumo de referência:

Formatar Formato de assembly Descrição
FE 07 <T> ldvirtftn method Envia o ponteiro para o método method virtual de um objeto na pilha.

O comportamento de transição da pilha, em ordem sequencial, é:

  1. Uma referência de objeto é enviada por push para a pilha.

  2. A referência de objeto é exibida da pilha e o endereço do ponto de entrada para o método (conforme especificado pelo token methodde metadados ) é pesquisado.

  3. O ponteiro para method é enviado por push para a pilha.

O ponteiro não gerenciado resultante enviado para a pilha pela ldvirtftn instrução pode ser chamado usando a instrução se fizer referência a Calli um método gerenciado (ou um stub que faz a transição de código gerenciado para não gerenciado).

O ponteiro não gerenciado aponta para o código nativo usando a convenção de chamada CLR. Esse ponteiro de método não deve ser passado para código nativo não gerenciado como uma rotina de retorno de chamada.

A sobrecarga do método Emit a seguir pode usar o ldvirtftn opcode:

Aplica-se a