CComVariant::GetSize
単純な固定サイズの VARIANT について、基になるデータ型の sizeof と sizeof(VARTYPE) を合わせた値を返します。
ULONG GetSize() const;
戻り値
CComVariant オブジェクトの現在の内容のサイズ (バイト数) を返します。
解説
VARIANT にインターフェイス ポインターが含まれる場合、GetSize は IPersistStream または IPersistStreamInit について問い合わせます。照会が成功すると、戻り値は GetSizeMax によって返される下位 32 ビットの値および CLSIDsizeof と sizeof(VARTYPE) を合わせた値になります。インターフェイス ポインターが NULL の場合、GetSize は CLSIDsizeof と sizeof(VARTYPE) を合わせた値になります。合計サイズが ULONG_MAX を超える場合、GetSize はエラーを表す sizeof(VARTYPE) を返します。
それ以外の場合、VT_BSTR 型の一時 VARIANT は現在の VARIANT から強制的に変換されます。この BSTR の長さは、文字列の長さのサイズ、文字列そのものの長さ、null 文字のサイズ、sizeof(VARTYPE) の合計になります。VARIANT を VT_BSTR 型の VARIANT に強制的に変換できない場合、GetSize は sizeof(VARTYPE) を返します。
適切な条件の下では、このメソッドによって返されるサイズは、CComVariant::WriteToStream によって使用されるバイト数と一致します。
必要条件
ヘッダー: atlcomcli.h