Шаг 22 - VariantClear

Очищает вариант.

HRESULT VariantClear
( 
	VARIANTARG FAR*pvarg
);

Параметр:

Коды возврата:
Из возвращенного HRESULT получают один из следующих кодов возврата:

Код возвратаЗначение
S_OKУспех.
DISP_E_ARRAYISLOCKEDВариант содержит заблокированный массив.
DISP_E_BADVARTYPEТип варианта pvarg не допускается.
E_INVALIDARGОдин из аргументов неверен.

Комментарии:
Используйте эту функцию для очистки переменных типа VARIANTARG (или VARIANT) перед тем, как освободить содержащую их память (например, при выходе из области действия локальной переменной).
Функция очищает VARIANTARG, устанавливая поле vt в VT_EMPTY, а поле wReserved — в 0. Перед этим освобождается текущее содержимое варианта. Если поле vt содержит VT_BSTR, то строка освобождается. Если поле vt содержит VT_DISPATCH, то освобождается объект. Если в поле vt установлен бит VT_ARRAY, то освобождается массив.

Пример:

for(i =0;  i < celt; i++) VariantClear(&rgvar[i]);

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 02.03.2002