COleSafeArray::Create
Alloca e inizializzare i dati della matrice.
void Create(
VARTYPE vtSrc,
DWORD dwDims,
DWORD* rgElements
);
void Create(
VARTYPE vtSrc,
DWORD dwDims,
SAFEARRAYBOUND* rgsabounds
);
Parametri
vtSrc
Il tipo di base della matrice (ovvero VARTYPE di ogni elemento della matrice). VARTYPE È limitato a un sottoinsieme dei tipi di variant. VT_ARRAY né né il flag VT_BYREF può essere impostato. VT_EMPTY e VT_NULL sono tipi di base non validi per la matrice. Tutti gli altri tipi sono validi.dwDims
Numero di dimensioni della matrice. Ciò può essere modificata dopo la matrice viene creato con Redim.rgElements
Puntatore a matrice del numero di elementi per ogni dimensione della matrice.rgsabounds
Puntatore a un vettore dei limiti (uno per ciascuna dimensione) da allocare per la matrice.
Note
Questa funzione cancellerà i dati correnti di matrice se necessario. Sull'errore, la funzione genera CMemoryException.
Esempio
COleSafeArray saMatrix;
DWORD numElements[] = {10, 5};
// creates a 2 dimensional safearray of type VT_I2
// with size 10x5 elements, with all indices starting at 0(default)
saMatrix.Create(VT_I2, 2, numElements);
ASSERT(saMatrix.GetDim() == 2);
COleSafeArray saVector;
SAFEARRAYBOUND rgsabounds[] = { {5, 2} };
// creates a 1 dimensional safearray of type VT_I1
// with size 5 elements, with the index starting at 2
saVector.Create(VT_I1, 1, rgsabounds);
ASSERT(saVector.GetDim() == 1);
Requisiti
Header: afxdisp.h