Freigeben über


CComObjectStack Class

Diese Klasse erstellt ein temporäres COM-Objekt und gibt den mit einer skelettartigen Implementierung von IUnknown.

template< 
   class Base  
> 
class CComObjectStack : 
   public Base

Parameter

  • Base
    Die Klasse, die von abgeleitet CComObjectRoot oder von CComObjectRootEx sowie von jeder anderen Schnittstelle möchten Sie auf das Objekt unterstützen.

Mitglieder

Öffentliche Konstruktoren

Name

Description

CComObjectStack::CComObjectStack

Der -Konstruktor.

CComObjectStack::~CComObjectStack

Der Destruktor.

Öffentliche Methoden

Name

Description

CComObjectStack::AddRef

Gibt null. Im Debugmodus Aufrufe _ASSERTE.

CComObjectStack::QueryInterface

Gibt E_NOINTERFACE. Im Debugmodus Aufrufe _ASSERTE.

CComObjectStack::Release

Gibt null. Im Debugmodus Aufrufe _ASSERTE. ~

Öffentliche Datenmember

Name

Description

CComObjectStack::m_hResFinalConstruct

Enthält HRESULT, das während der Konstruktion des CComObjectStack-Objekts zurückgegeben wird.

Hinweise

CComObjectStack wird verwendet, um ein temporäres COM-Objekt erstellen und das Objekt bereitzustellen skelettartige eine Implementierung von IUnknown. In der Regel wird das Objekt wie eine lokale Variable in einer Funktion verwendet (also, gedrückt auf dem Stapel). Da das Objekt zerstört wird, wenn die Funktion, Verweiszählung nicht ausgeführt wird, um die Effizienz zu erhöhen.

Im folgenden Beispiel wird gezeigt, wie ein COM-Objekt erstellt, das innerhalb einer Funktion verwendet wird:

void MyFunc()
{
   CComObjectStack<CMyClass2> Tempobj;
   //...
}

Das temporäre Objekt Tempobj wird auf dem Stapel abgelegt und wird automatisch wenn die Funktionsende.

Vererbungshierarchie

Base

CComObjectStack

Anforderungen

Header: möchten

Siehe auch

Referenz

CComAggObject Class

CComObject Class

CComObjectGlobal Class

Weitere Ressourcen

ATL Class Overview