Temp&latelt; -KlasseT ≫
CComPtr-Klasse
Parameter
T
Eine COM-Schnittstelle, die den Typ des Zeigers gespeichert werden.
ATL verwendet CComPtr und CComQIPtr zum Verwalten von COM-Schnittstellenzeigern. Beide Klassen führen automatische Referenzzählung durch Aufrufe von AddRef und Release. Überladene Operatoren behandeln Zeigeroperationen. CComQIPtr unterstützt zusätzlich die automatische Abfrage von Schnittstellen aber QueryInterface.
Der folgende Code ist von CFirePropNotifyEvent::FireOnRequestEdit
statische HRESULT FireOnRequestEdit(IUnknown* pUnk, DISPID dispID)
{
Nbsp; CComQIPtr < IConnectionPointContainer & IID_IConnectionPointContainer > pCPC(pUnk);
Wenn (! pCPC)
Gibt S_OK zurück.
CComPtr <IConnectionPoint> pCP;
pCPC - > FindConnectionPoint (IID_IPropertyNotifySink, & pCP);
Wenn (! pCP)
Gibt S_OK zurück.
...
}
Dieses Beispiel veranschaulicht die folgenden:
pCPC , ruft QueryInterface auf pUnk der IConnectionPointContainer -Schnittstellenzeiger zu erhalten. Der abgerufene Zeiger wird in gespeichert.pCPC.pCP , um einen Schnittstellenzeiger IConnectionPoint zu halten.pCPC einen Schnittstellenzeiger IConnectionPoint über abrufenpCP.# include lt;atlbase.h>
Siehe auch&Nbsp;CComPtr::CComPtr, CComQIPtr::CComQIPtr