SafeArrayDestroy

HRESULT SafeArrayDestroy( 
  SAFEARRAY FAR*  psa  
);
 

Destroys an existing array descriptor and all of the data in the array. If objects are stored in the array, Release is called on each object in the array.

Parameter

psa
Pointer to an array descriptor created by SafeArrayCreate.

Return Value

The return value obtained from the returned HRESULT is one of the following.

Return value Meaning
S_OK Success.
DISP_E_ARRAYISLOCKED The array is currently locked.
E_INVALIDARG The item pointed to by psa is not a safe array descriptor.

Example

STDMETHODIMP_(ULONG) CEnumPoint::Release()
{
    if(--m_refs == 0){
        if(m_psa != NULL)
        SafeArrayDestroy(m_psa);
        delete this;
        return 0;
    }
    return m_refs;
}

QuickInfo

  Windows NT: Use version 3.1 and later.
  Windows: Use Windows 95 and later.
  Header: Declared in oleauto.h.
  Import Library: Link with oleaut32.lib.