VariantCopyInd 函式 (oleauto.h)
釋放目的地變體並建立來源變體的複本,並在指定來源時執行必要的間接存取,以VT_BYREF。
語法
HRESULT VariantCopyInd(
[out] VARIANT *pvarDest,
[in] const VARIANTARG *pvargSrc
);
參數
[out] pvarDest
目的變數。
[in] pvargSrc
來源變體。
傳回值
此函式可以傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
成功。 |
|
Variant 包含鎖定的陣列。 |
|
Variant 類型不是有效的 Variant 類型。 |
|
其中一個自變數無效。 |
|
記憶體不足,無法完成作業。 |
備註
此函式在需要變體複本時很有用,並保證它不會VT_BYREF,例如處理 IDispatch::Invoke 實作中的自變數時。
例如,如果來源是 (VT_BYREF |VT_I2) ,目的地將會是 BYVAL |VT_I2。 所有法律VT_BYREF組合也是如此,包括VT_VARIANT。
如果 pvargSrc 是 (VT_BYREF |VT_VARIANT) ,且包含的變體VT_BYREF,則包含的變體也會被取值。
此函式會釋放 pvarDest 的任何現有內容。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | oleauto.h |
程式庫 | OleAut32.lib |
Dll | OleAut32.dll |