« ソース整理・構成の変更 | メイン | ソースの整理2 »
August 17, 2004
CComPtrの代入時の振る舞い
COMのインターフェイスを管理する時はATLのCComPtrを使うと楽だ。
ソースはatlcomcli.hにある。
で、代入時の振る舞いがちょっと気になったので調べてみた。
中ではAtlComPtrAssignが呼ばれている。
その中を見ると次のような感じ。
if (pp == NULL)
return NULL;
if (lp != NULL)
lp->AddRef();
if (*pp)
(*pp)->Release();
*pp = lp;
return lp;
やっぱ代入元もAddRefされてるんすね。
と言うことは、呼び出し元管理のインターフェイスは代入後Release呼んどいた方が良さそうだ。
投稿者 Takenori : August 17, 2004 02:16 PM
Trackback Pings
このエントリーのトラックバックURL:
http://blog.kaede-software.com/mt-tb.cgi/92