Partilhar via


IDebugReference2

Essa interface representa uma referência a uma propriedade de quadro de pilha ou outra propriedade.

Dica

IDebugReference2está reservado para uso futuro e todos os seus métodos devem retornar E_NOTIMPL.

IDebugReference2 : IUnknown

Observações para Implementadores

O DE implementa essa interface para representar uma referência a um determinado tipo de valor. Por exemplo, o valor poderia ser um valor numérico como resultado de uma avaliação de expressão, um contexto de memória usada para exibir a memória, ou uma lista de registradores e seus valores.

Observações para chamadores

Chame IDebugProperty2::GetReference para obter esta interface. IDebugReference2::GetParente IDebugReference2::GetDerivedMostReference também retornar a esta interface.

Métodos na ordem de Vtable

A tabela a seguir mostra os métodos de IDebugReference2.

Método

Descrição

IDebugReference2::GetReferenceInfo

Obtém o DEBUG_REFERENCE_INFO estrutura que descreve essa referência.

IDebugReference2::SetValueAsString

Define o valor de referência de uma seqüência.

IDebugReference2::SetValueAsReference

Define o valor dessa referência a partir de outra referência.

IDebugReference2::EnumChildren

Enumera os filhos dessa referência.

IDebugReference2::GetParent

Obtém o pai dessa referência.

IDebugReference2::GetDerivedMostReference

Obtém a referência derivado para a maioria dessa referência.

IDebugReference2::GetMemoryBytes

Obtém os bytes de memória ao qual essa referência se refere.

IDebugReference2::GetMemoryContext

Obtém um contexto de memória para essa referência.

IDebugReference2::GetSize

Obtém o tamanho, em bytes, dessa referência.

IDebugReference2::SetReferenceType

Define este tipo de referência.

IDebugReference2::Compare

Compara essa referência com o outro.

Comentários

Dica

Este uso de "propriedade" não deve ser confundido com aquele que significa uma variável de membro de uma classe, embora um IDebugReference2 pode representar uma entidade inexistente.

IDebugProperty2representa uma propriedade, enquanto IDebugReference2 representa uma referência a uma propriedade, normalmente uma referência a um objeto no programa que está sendo depurado.

A principal diferença entre uma propriedade e uma referência é que uma propriedade se refere a uma instância nomeada de um objeto, enquanto refere-se de uma referência a uma instância sem nome. Por exemplo, uma propriedade pode se referir a um objeto na pilha do programa por "a.b". Outra propriedade que pode se referir ao mesmo objeto, como "c.d". A maneira de se referir a essa propriedade requer que "a.b" ou "c.d" do escopo. Uma referência a esse mesmo objeto é sem nome; o objeto pode ser chamado, desde que a memória para o objeto é válida.

Um IDebugProperty2 interface pode ser considerado como um valor com um nome, um tipo e um endereço. Um IDebugReference2, na outra mão, pode ser considerado como um tipo e um endereço.

Requisitos

Cabeçalho: msdbg.h

Namespace: Microsoft.VisualStudio.Debugger.Interop

Assembly: Microsoft.VisualStudio.Debugger.Interop.dll

Consulte também

Referência

DEBUG_REFERENCE_INFO

IDebugProperty2

IDebugProperty2::GetReference

Conceitos

Interfaces principais