Método IDebugHostType::GetArrayDimensions (dbgmodel.h)

O método GetArrayDimensions retorna um conjunto de descritores, um para cada dimensão da matriz, conforme indicado pelo método GetArrayDimensionality. Cada descritor é uma estrutura ArrayDimension que descreve o índice inicial, o comprimento e o passo a passo de cada dimensão da matriz. Isso permite descrições de constructos de matriz significativamente mais poderosos do que são permitidos no sistema de tipos C.

Para matrizes de estilo C, uma única dimensão de matriz é retornada aqui com valores que são sempre:

  • LowerBound = 0
  • Length = ARRAYSIZE(array)
  • Stride = sizeof(elementType)

Sintaxe

HRESULT GetArrayDimensions(
  ULONG64        dimensions,
  ArrayDimension *pDimensions
);

Parâmetros

dimensions

Indica o número de descritores de dimensão a serem buscados. Esse deve ser o valor adquirido de uma chamada para GetArrayDimensionality. Um buffer de dimensões de estruturas ArrayDimension que serão preenchidas para descrever totalmente o layout da matriz na memória.

pDimensions

Um buffer de dimensões de estruturas ArrayDimension que serão preenchidas para descrever totalmente o layout da matriz na memória.

Retornar valor

Esse método retorna HRESULT que indica êxito ou falha.

Comentários

Código de exemplo

ComPtr<IDebugHostType> spType; /* get a type for some array (see FindTypeByName) */

ArrayDimension adim;
if (SUCCEEDED(spType->GetArrayDimensions(1, &adim)))
{
    // adim indicates information about the dimension.  For C/C++, length is 
    // the largely relevant field.  C/C++ arrays are always zero based.  The 
    // stride field would indicate the size of the array element type.
}

Requisitos

Requisito Valor
Cabeçalho dbgmodel.h

Confira também

Interface IDebugHostType