CComObjectStack, classe
Cette classe crée un objet COM temporaire et lui fournit une implémentation squelette de IUnknown
.
Syntaxe
template <class Base>
class CComObjectStack : public Base
Paramètres
Base
Votre classe, dérivée de CComObjectRoot ou CComObjectRootEx, ainsi que de toute autre interface que vous souhaitez prendre en charge sur l’objet.
Membres
Constructeurs publics
Nom | Description |
---|---|
CComObjectStack ::CComObjectStack | Constructeur . |
CComObjectStack ::~CComObjectStack | Destructeur. |
Méthodes publiques
Nom | Description |
---|---|
CComObjectStack ::AddRef | Retourne zéro. En mode débogage, appelle _ASSERTE . |
CComObjectStack ::QueryInterface | Retourne E_NOINTERFACE. En mode débogage, appelle _ASSERTE . |
CComObjectStack ::Release | Retourne zéro. En mode débogage, appelle _ASSERTE . ~ |
Membres de données publics
Nom | Description |
---|---|
CComObjectStack ::m_hResFinalConstruct | Contient le HRESULT retourné lors de la construction de l’objet CComObjectStack . |
Notes
CComObjectStack
est utilisé pour créer un objet COM temporaire et fournir à l’objet une implémentation squelette de IUnknown
. En règle générale, l’objet est utilisé comme variable locale au sein d’une fonction (autrement dit, poussée sur la pile). Étant donné que l’objet est détruit lorsque la fonction se termine, le comptage de références n’est pas effectué pour augmenter l’efficacité.
L’exemple suivant montre comment créer un objet COM utilisé à l’intérieur d’une fonction :
void MyFunc()
{
CComObjectStack<CMyClass2> Tempobj;
//...
}
L’objet Tempobj
temporaire est envoyé sur la pile et disparaît automatiquement lorsque la fonction se termine.
Hiérarchie d'héritage
Base
CComObjectStack
Spécifications
En-tête : atlcom.h
CComObjectStack ::AddRef
Retourne zéro.
STDMETHOD_(ULONG, AddRef)();
Valeur de retour
Retourne zéro.
Notes
En mode débogage, appelle _ASSERTE
.
CComObjectStack ::CComObjectStack
Constructeur .
CComObjectStack(void* = NULL);
Notes
Appelle FinalConstruct
, puis définit m_hResFinalConstruct à HRESULT retourné par FinalConstruct
. Si vous n’avez pas dérivé votre classe de base à partir de CComObjectRoot, vous devez fournir votre propre FinalConstruct
méthode. Le destructeur appelle FinalRelease
.
CComObjectStack ::~CComObjectStack
Destructeur.
CComObjectStack();
Notes
Libère toutes les ressources allouées et appelle FinalRelease.
CComObjectStack ::m_hResFinalConstruct
Contient le HRESULT retourné par l’appel FinalConstruct
pendant la construction de l’objet CComObjectStack
.
HRESULT m_hResFinalConstruct;
CComObjectStack ::QueryInterface
Retourne E_NOINTERFACE.
HRESULT QueryInterface(REFIID, void**);
Valeur de retour
Retourne E_NOINTERFACE.
Notes
En mode débogage, appelle _ASSERTE
.
CComObjectStack ::Release
Retourne zéro.
STDMETHOD_(ULONG, Release)();
Valeur de retour
Retourne zéro.
Notes
En mode débogage, appelle _ASSERTE
.
Voir aussi
CComAggObject, classe
CComObject, classe
CComObjectGlobal, classe
Vue d’ensemble de la classe