Partager via


IDebugHostType ::GetArrayDimensions, méthode (dbgmodel.h)

La méthode GetArrayDimensions retourne un ensemble de descripteurs, un pour chaque dimension du tableau, comme indiqué par la méthode GetArrayDimensionality. Chaque descripteur est une structure ArrayDimension qui décrit l’index de départ, la longueur et la progression vers l’avant de chaque dimension de tableau. Cela permet des descriptions de constructions de tableau beaucoup plus puissantes que celles autorisées dans le système de type C.

Pour les tableaux de style C, une dimension de tableau unique est retournée ici avec des valeurs qui sont toujours :

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

Syntaxe

HRESULT GetArrayDimensions(
  ULONG64        dimensions,
  ArrayDimension *pDimensions
);

Paramètres

dimensions

Indique le nombre de descripteurs de dimension à extraire. Il doit s’agir de la valeur acquise à partir d’un appel à GetArrayDimensionality. Mémoire tampon des structures ArrayDimension de dimensions qui seront renseignées pour décrire entièrement la disposition du tableau en mémoire.

pDimensions

Mémoire tampon des structures ArrayDimension de dimensions qui seront renseignées pour décrire entièrement la disposition du tableau en mémoire.

Valeur de retour

Cette méthode retourne HRESULT qui indique la réussite ou l’échec.

Remarques

exemple de code

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.
}

Exigences

Exigence Valeur
d’en-tête dbgmodel.h

Voir aussi

interface IDebugHostType