CComObjectNoLock, classe
Cette classe implémente pour un objet non agrégé, mais n’incrémente pas le nombre de verrous IUnknown
de module dans le constructeur.
Syntaxe
template<class Base>
class CComObjectNoLock : 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 |
---|---|
CComObjectNoLock ::CComObjectNoLock | Constructeur. |
CComObjectNoLock ::~CComObjectNoLock | Destructeur. |
Méthodes publiques
Nom | Description |
---|---|
CComObjectNoLock ::AddRef | Incrémente le nombre de références sur l’objet. |
CComObjectNoLock ::QueryInterface | Retourne un pointeur vers l’interface demandée. |
CComObjectNoLock ::Release | Décrémente le nombre de références sur l’objet. |
Notes
CComObjectNoLock
est similaire à CComObject dans le fait qu’il implémente IUnknown pour un objet non agrégé . Toutefois, CComObjectNoLock
il n’incrémente pas le nombre de verrous de module dans le constructeur.
ATL utilise CComObjectNoLock
en interne pour les fabriques de classes. En général, vous n’utiliserez pas cette classe directement.
Hiérarchie d'héritage
Base
CComObjectNoLock
Spécifications
En-tête : atlcom.h
CComObjectNoLock ::AddRef
Incrémente le nombre de références sur l’objet.
STDMETHOD_(ULONG, AddRef)();
Valeur de retour
Valeur qui peut être utile pour les diagnostics ou les tests.
CComObjectNoLock ::CComObjectNoLock
Constructeur . Contrairement à CComObject, n’incrémente pas le nombre de verrous de module.
CComObjectNoLock(void* = NULL);
Paramètres
vide*
[in] Ce paramètre non nommé n’est pas utilisé. Il existe pour la symétrie avec d’autres CComXXXObjectXXX
constructeurs.
CComObjectNoLock ::~CComObjectNoLock
Destructeur.
~CComObjectNoLock();
Notes
Libère toutes les ressources allouées et appelle FinalRelease.
CComObjectNoLock ::QueryInterface
Récupère un pointeur vers l'interface demandée.
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
Paramètres
iid
[in] Identificateur de l'interface demandée.
ppvObject
[out] Pointeur vers le pointeur d’interface identifié par iid. Si l’objet ne prend pas en charge cette interface, ppvObject a la valeur NULL.
Valeur de retour
Valeur HRESULT standard.
CComObjectNoLock ::Release
Décrémente le nombre de références sur l’objet.
STDMETHOD_(ULONG, Release)();
Valeur de retour
Dans les builds de débogage, Release
retourne une valeur qui peut être utile pour les diagnostics ou les tests. Dans les builds non debug, Release
retourne toujours 0.