COleSafeArray::Create
Přiděluje a inicializuje dat pro pole.
void Create(
VARTYPE vtSrc,
DWORD dwDims,
DWORD* rgElements
);
void Create(
VARTYPE vtSrc,
DWORD dwDims,
SAFEARRAYBOUND* rgsabounds
);
Parametry
vtSrc
Základní typ pole (to znamená VARTYPE každého prvku matice).VARTYPE je omezena na dílčí typy variant.Ani VT_ARRAY ani VT_BYREF lze nastavit příznak.VT_EMPTYa VT_NULL nejsou platné základní typy pro pole.Všechny ostatní typy jsou právní.dwDims
Počet rozměrů pole.To lze změnit po vytvoření pole s Redim.rgElements
Ukazatel do pole počet prvků pro každou dimenzi v matici.rgsabounds
Ukazatel na vektor bounds (jeden pro každou dimenzi) přidělit pro pole.
Poznámky
Tato funkce bude zrušte aktuální pole data v případě potřeby.Chyba, vyvolá funkci CMemoryException.
Příklad
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);
Požadavky
Záhlaví: afxdisp.h