SafeArrayDestroy 函式 (oleauto.h)
終結現有的陣列描述元和陣列中的所有數據。 如果物件儲存在陣列中,則會在數位中的每個物件上呼叫 Release 。
語法
HRESULT SafeArrayDestroy(
[in] SAFEARRAY *psa
);
參數
[in] psa
SafeArrayCreate 所建立的陣列描述項。
傳回值
此函式可以傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
成功。 |
|
自變數 是 無效的。 |
|
陣列已鎖定。 |
備註
Variant 的安全陣列會在每個成員上呼叫 VariantClear 函式,而 BSTR 的安全陣列則會在每個元素上呼叫 SysFreeString 函式。 系統會呼叫 IRecordInfo::RecordClear 來釋放對象參考和記錄的其他值,而不會解除分配記錄。
範例
STDMETHODIMP_(ULONG) CEnumPoint::Release()
{
if(--m_refs == 0){
if(m_psa != NULL)
SafeArrayDestroy(m_psa);
delete this;
return 0;
}
return m_refs;
}
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | oleauto.h |
程式庫 | OleAut32.lib |
Dll | OleAut32.dll |