CComPtr

templatelt; Ŭ·¡½ºT (&L)gt;
CComPtr Ŭ·¡½º(&G)

¸Å°³ º¯¼ö

T

ÀúÀå Æ÷ÀÎÅÍÀÇ Çü½ÄÀ» ÁöÁ¤ ÇÏ´Â COM ÀÎÅÍÆäÀ̽º¡£

ATL CComPtr ¹× CComQIPtr »ç¿ë ÇÏ ¿© COM ÀÎÅÍÆäÀ̽º Æ÷ÀÎÅ͸¦ °ü¸® ÇÕ´Ï´Ù. µÎ Ŭ·¡½º ¸ðµÎ ÀÚµ¿ ÂüÁ¶ AddRef ¹× Release¿¡ ´ë ÇÑ È£ÃâÀ» ÅëÇØ °è»êÀ» ¼öÇà ÇÕ´Ï´Ù. ¿À¹ö ·Îµå µÈ ¿¬»êÀÚ´Â Æ÷ÀÎÅÍ ÀÛ¾÷À» ó¸® ÇÕ´Ï´Ù. CComQIPtr ¶ÇÇÑ ÀÚµ¿ Äõ¸® ÀÎÅÍÆäÀ̽ºÀÇ ºñ·Ï QueryInterface Áö¿ø¡£

´ÙÀ½ ÄÚµå´Â CFirePropNotifyEvent::FireOnRequestEdit ¿¡¼­

Á¤Àû HRESULT FireOnRequestEdit(IUnknown* pUnk, DISPID dispID)
{
 nbsp; < IConnectionPointContainer, & IID_IConnectionPointContainer > CComQIPtr pCPC(pUnk);
 ? °æ¿ì (! pCPC)
 ???? return S_OK;

CComPtr <IConnectionPoint> ÁÖÄ¡ÀÇ;
 ? pCPC-> FindConnectionPoint (IID_IPropertyNotifySink, & ÁÖÄ¡ÀÇ);
 ? °æ¿ì (! ÁÖÄ¡ÀÇ)
 ???? return S_OK;

...
}

ÀÌ ¿¹Á¦¿¡¼­´Â ´ÙÀ½ º¸¿© ÁÝ´Ï´Ù.:

# include lt;atlbase.h>

Ŭ·¡½º ¸â¹ö

Âü°í Ç׸ñnbsp;CComPtr::CComPtr, CComQIPtr::CComQIPtr(&N)

Index