C++でVARIANT配列を扱う

COMで使用するVARIANT配列を生成するコンパクトな実装コードです。
ATL使用が前提で,1次元のみ対応しています。
template 
static HRESULT createVariantArray(T* value, int count, VARIANT*& retval)
{
SAFEARRAYBOUND sab = { count, 0 }; // 0 〜 count-1
CComSafeArray sarray(sab);
for(int n = 0; n < count; ++n) {
sarray.Add(*value++);
}
return CComVariant(sarray).Detach(retval);
}
タグ:C++ com
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/97143512
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
rank← ランキングはこちらをクリック!