SafeArrayDestroy 関数 (oleauto.h)
既存の配列記述子と配列内のすべてのデータを破棄します。 オブジェクトが配列に格納されている場合は、配列内の各オブジェクトに対して Release が呼び出されます。
構文
HRESULT SafeArrayDestroy(
[in] SAFEARRAY *psa
);
パラメーター
[in] psa
SafeArrayCreate によって作成された配列記述子。
戻り値
この関数は、これらの値のいずれかを返すことができます。
リターン コード | 説明 |
---|---|
|
正常終了しました。 |
|
引数 psa が無効です。 |
|
配列がロックされています。 |
注釈
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 |
Library | OleAut32.lib |
[DLL] | OleAut32.dll |