SafeArrayAllocDescriptor 함수(oleauto.h)
안전한 배열 설명자에 대한 메모리를 할당합니다.
구문
HRESULT SafeArrayAllocDescriptor(
[in] UINT cDims,
[out] SAFEARRAY **ppsaOut
);
매개 변수
[in] cDims
배열의 차수입니다.
[out] ppsaOut
안전 배열 설명자입니다.
반환 값
이 함수는 이러한 값 중 하나를 반환할 수 있습니다.
반환 코드 | Description |
---|---|
|
성공. |
|
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 |
라이브러리 | OleAut32.lib |
DLL | OleAut32.dll |