Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Essa classe cria um objeto COM temporário e fornece a ele uma implementação estrutural de IUnknown.
Sintaxe
template <class Base>
class CComObjectStack : public Base
Parâmetros
Base
Sua classe, derivada de CComObjectRoot ou CComObjectRootEx, bem como de qualquer outra interface que você deseja dar suporte no objeto.
Membros
Construtores públicos
| Nome | Descrição |
|---|---|
| CComObjectStack::CComObjectStack | O construtor . |
| CComObjectStack::~CComObjectStack | O destruidor. |
Métodos públicos
| Nome | Descrição |
|---|---|
| CComObjectStack::AddRef | Retorna zero. No modo de depuração, chama _ASSERTE. |
| CComObjectStack::QueryInterface | Retorna E_NOINTERFACE. No modo de depuração, chama _ASSERTE. |
| CComObjectStack::Release | Retorna zero. No modo de depuração, chama _ASSERTE. ~ |
Membros de Dados Públicos
| Nome | Descrição |
|---|---|
| CComObjectStack::m_hResFinalConstruct | Contém o HRESULT retornado durante a construção do objeto CComObjectStack. |
Comentários
CComObjectStack é usado para criar um objeto COM temporário e fornecer ao objeto uma implementação estrutural de IUnknown. Normalmente, o objeto é usado como uma variável local dentro de uma função (ou seja, enviada por push para a pilha). Como o objeto é destruído quando a função é concluída, a contagem de referências não é executada para aumentar a eficiência.
O seguinte exemplo mostra como criar um objeto COM usado dentro de uma função:
void MyFunc()
{
CComObjectStack<CMyClass2> Tempobj;
//...
}
O objeto Tempobj temporário é enviado por push para a pilha e desaparece automaticamente quando a função é concluída.
Hierarquia de herança
Base
CComObjectStack
Requisitos
Cabeçalho: atlcom.h
CComObjectStack::AddRef
Retorna zero.
STDMETHOD_(ULONG, AddRef)();
Valor de retorno
Retorna zero.
Comentários
No modo de depuração, chama _ASSERTE.
CComObjectStack::CComObjectStack
O construtor .
CComObjectStack(void* = NULL);
Comentários
Chama FinalConstruct e define m_hResFinalConstruct para o HRESULT retornado por FinalConstruct. Se você não tiver derivado sua classe base do CComObjectRoot, deverá fornecer seu próprio método FinalConstruct. O destruidor chama FinalRelease.
CComObjectStack::~CComObjectStack
O destruidor.
CComObjectStack();
Comentários
Libera todos os recursos alocados e chama FinalRelease.
CComObjectStack::m_hResFinalConstruct
Contém o HRESULT retornado ao chamar FinalConstruct durante a construção do objeto CComObjectStack.
HRESULT m_hResFinalConstruct;
CComObjectStack::QueryInterface
Retorna E_NOINTERFACE.
HRESULT QueryInterface(REFIID, void**);
Valor de retorno
Retorna E_NOINTERFACE.
Comentários
No modo de depuração, chama _ASSERTE.
CComObjectStack::Release
Retorna zero.
STDMETHOD_(ULONG, Release)();
Valor de retorno
Retorna zero.
Comentários
No modo de depuração, chama _ASSERTE.
Confira também
Classe CComAggObject
Classe CComObject
Classe CComObjectGlobal
Visão geral da aula