Metodo IDebugHostType::GetArrayDimensions (dbgmodel.h)
Il metodo GetArrayDimensions restituisce un set di descrittori, uno per ogni dimensione della matrice, come indicato dal metodo GetArrayDimensionality. Ogni descrittore è una struttura ArrayDimension che descrive l'indice iniziale, la lunghezza e lo stride forward di ogni dimensione di matrice. Ciò consente descrizioni di costrutti di matrice notevolmente più potenti di quelli consentiti nel sistema di tipi C.
Per le matrici di tipo C, viene restituita una singola dimensione di matrice qui con valori che sono sempre:
- LowerBound = 0
- Length = ARRAYSIZE(array)
- Stride = sizeof(elementType)
Sintassi
HRESULT GetArrayDimensions(
ULONG64 dimensions,
ArrayDimension *pDimensions
);
Parametri
dimensions
Indica il numero di descrittori di dimensione da recuperare. Deve essere il valore acquisito da una chiamata a GetArrayDimensionality. Buffer di dimensioni strutture ArrayDimension che verranno riempite per descrivere completamente il layout della matrice in memoria.
pDimensions
Buffer di dimensioni strutture ArrayDimension che verranno riempite per descrivere completamente il layout della matrice in memoria.
Valore restituito
Questo metodo restituisce HRESULT che indica l'esito positivo o negativo.
Commenti
Codice di esempio
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.
}
Requisiti
Requisito | Valore |
---|---|
Intestazione | dbgmodel.h |