SafeArrayAllocDescriptor 函数 (oleauto.h)
为安全数组描述符分配内存。
语法
HRESULT SafeArrayAllocDescriptor(
[in] UINT cDims,
[out] SAFEARRAY **ppsaOut
);
参数
[in] cDims
数组的维数。
[out] ppsaOut
安全数组描述符。
返回值
此函数可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
成功。 |
|
参数 psa 无效。 |
|
无法锁定数组。 |
注解
此函数允许创建包含除 SafeArrayCreate 提供的数据类型以外的元素的安全数组。 使用 SafeArrayAllocDescriptor 创建数组描述符后,在数组描述符中设置元素大小,调用 SafeArrayAllocData 为数组元素分配内存。
示例
以下示例使用 SafeArrayAllocDescriptor 和 SafeArrayAllocData 函数创建安全数组。
SAFEARRAY *psa;
unsigned int ndim = 2;
HRESULT hresult = SafeArrayAllocDescriptor( ndim, &psa );
if( FAILED( hresult ) )
return ERR_OutOfMemory;
(psa)->rgsabound[ 0 ].lLbound = 0;
(psa)->rgsabound[ 0 ].cElements = 5;
(psa)->rgsabound[ 1 ].lLbound = 1;
(psa)->rgsabound[ 1 ].cElements = 4;
hresult = SafeArrayAllocData( psa );
if( FAILED( hresult ) ) {
SafeArrayDestroyDescriptor( psa )
return ERR_OutOfMemory;
}
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | oleauto.h |
Library | OleAut32.lib |
DLL | OleAut32.dll |