COleSafeArray::Create
Alokuje i inicjuje danych dla macierzy.
void Create(
VARTYPE vtSrc,
DWORD dwDims,
DWORD* rgElements
);
void Create(
VARTYPE vtSrc,
DWORD dwDims,
SAFEARRAYBOUND* rgsabounds
);
Parametry
vtSrc
Typ podstawowy tablicy (czyli VARTYPE każdego elementu tablicy).VARTYPE jest ograniczony do podzbioru rodzajów wariantu.Ani VT_ARRAY ani VT_BYREF można ustawić flagi.VT_EMPTYi VT_NULL nie są prawidłowe typy podstawowej tablicy.Prawne są inne typy.dwDims
Liczba wymiarów tablicy.To można zmienić po utworzeniu tablicy z Redim.rgElements
Wskaźnik do tablicy liczba elementów w tablicy dla każdego wymiaru.rgsabounds
Wskaźnik wektor ogranicza (jeden dla każdego wymiaru) przydzielić dla tablicy.
Uwagi
Ta funkcja spowoduje wyczyszczenie bieżącej tablicy danych w razie potrzeby.Na błąd, funkcja generuje CMemoryException.
Przykład
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);
Wymagania
Nagłówek: afxdisp.h