Atributo event_receiver
Cria um receptor de eventos (coletor).
Observação
Os atributos de evento em C++ nativo são incompatíveis com o C++ Standard. Eles não são compilados quando você especifica o modo de conformidade /permissive-
.
Sintaxe
[ event_receiver(type
[, layout_dependent=false]) ]
Parâmetros
type
Uma enumeração de um dos valores a seguir:
native
para código C/C++ não gerenciado (padrão para classes nativas).com
para código COM. Esse valor requer que você inclua estes arquivos de cabeçalho:#define _ATL_ATTRIBUTES #include <atlbase.h> #include <atlcom.h>
layout_dependent
Especifique layout_dependent
somente se type
=com. layout_dependent
é um booliano:
true
significa que a assinatura dos delegados no receptor de eventos deve corresponder exatamente àqueles a eles estão conectados na origem do evento. Os nomes do manipulador do receptor de eventos devem corresponder aos nomes especificados na interface de origem do evento relevante. Usecoclass
quandolayout_dependent
fortrue
. É um pouco mais eficiente especificartrue
.false
(padrão) significa que a convenção de chamada e a classe de armazenamento (virtual
,static
etc.) não precisam corresponder ao método de evento e aos manipuladores. Os nomes do manipulador também não precisam corresponder aos nomes do método de interface de origem do evento.
Comentários
O atributo C++ event_receiver
especifica que a classe ou estrutura à qual ela é aplicada será um receptor de evento, usando o modelo de evento unificado do Microsoft C++.
event_receiver
é usado com o atributo event_source
e as palavras-chave __hook
e __unhook
. Use event_source
para criar fontes de evento. Use __hook
nos métodos de um receptor de evento para associar métodos de receptor de evento ("gancho") aos eventos de uma fonte de evento. Use __unhook
para desassociá-los.
layout_dependent
é especificado apenas para receptores de eventos COM (type
=com
). O padrão para layout_dependent
é false
.
Observação
Uma classe ou um struct modelo não podem conter eventos.
Requisitos
Contexto do atributo | Valor |
---|---|
Aplicável ao | class , struct |
Repetível | Não |
Atributos obrigatórios | coclass quando layout_dependent =true |
Atributos inválidos | Nenhum |
Para mais informações, confira Contextos de atributo.
Confira também
Atributos do compilador
event_source
__event
__hook
__unhook
Atributos de classe