Erstellen eines aggregierten Objekts
Aggregationsdelegattenaufrufe IUnknown
, die einen Zeiger auf das innere Objekt des äußeren Objekts IUnknown
bereitstellen.
So erstellen Sie ein aggregiertes Objekt
Fügen Sie ihrem Klassenobjekt einen
IUnknown
Zeiger hinzu, und initialisieren Sie ihn im Konstruktor auf NULL.Überschreiben Sie FinalConstruct , um das Aggregat zu erstellen.
Verwenden Sie den
IUnknown
in Schritt 1 definierten Zeiger als zweiten Parameter für die COM_INTERFACE_ENTRY_AGGREGATE Makros.Überschreiben Sie FinalRelease , um den
IUnknown
Zeiger freizugeben.
Hinweis
Wenn Sie eine Schnittstelle aus dem aggregierten Objekt verwenden und freigeben FinalConstruct
, sollten Sie das DECLARE_PROTECT_FINAL_CONSTRUCT Makro zur Definition des Klassenobjekts hinzufügen.