Поделиться через


Функция SafeArrayDe перебора (oleauto.h)

Уничтожает существующий дескриптор массива и все данные в массиве. Если объекты хранятся в массиве, метод Release вызывается для каждого объекта в массиве.

Синтаксис

HRESULT SafeArrayDestroy(
  [in] SAFEARRAY *psa
);

Параметры

[in] psa

Дескриптор массива, созданный safeArrayCreate.

Возвращаемое значение

Эта функция может возвращать одно из этих значений.

Код возврата Описание
S_OK
Успешно.
E_INVALIDARG
Аргумент psa недопустим.
DISP_E_ARRAYISLOCKED
Массив заблокирован.

Комментарии

Безопасные массивы 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
Header oleauto.h
Библиотека OleAut32.lib
DLL OleAut32.dll