Attributo event_receiver
Crea un ricevitore di eventi (sink).
Nota
Gli attributi di evento in C++ nativi non sono compatibili con C++Standard. Non vengono compilati quando si specifica la /permissive-
modalità di conformità.
Sintassi
[ event_receiver(type
[, layout_dependent=false]) ]
Parametri
type
Un'enumerazione di uno dei valori seguenti:
native
per il codice C/C++ non gestito (impostazione predefinita per le classi native).com
per il codice COM. Questo valore richiede l'inclusione di questi file di intestazione:#define _ATL_ATTRIBUTES #include <atlbase.h> #include <atlcom.h>
layout_dependent
Specificare layout_dependent
solo setype
= com. layout_dependent
è un valore booleano:
true
significa che la firma dei delegati nel ricevitore dell'evento deve corrispondere esattamente a quelle a cui sono agganciate nell'origine evento. I nomi dei gestori del ricevitore di eventi devono corrispondere ai nomi specificati nell'interfaccia dell'origine evento pertinente. Usarecoclass
quandolayout_dependent
ètrue
. È leggermente più efficiente specificaretrue
.false
(impostazione predefinita) indica che la convenzione di chiamata e la classe di archiviazione (virtual
,static
e altri) non devono corrispondere al metodo di evento e ai gestori. Anche i nomi dei gestori non devono corrispondere ai nomi dei metodi dell'interfaccia dell'origine eventi.
Osservazioni:
L'attributo event_receiver
C++ specifica che la classe o la struttura a cui viene applicata sarà un ricevitore di eventi, usando il modello di evento unificato Microsoft C++.
event_receiver
viene usato con l'attributo event_source
e le __hook
parole chiave e __unhook
. Usare event_source
per creare origini eventi. Utilizzare __hook
all'interno dei metodi di un ricevitore di eventi per associare metodi ricevitori di eventi ("hook") agli eventi di un'origine evento. Usare __unhook
per annullare l'associazione.
layout_dependent
è specificato solo per i ricevitori di eventi COM (type
=com
). L'impostazione predefinita per layout_dependent
è false
.
Nota
Una classe o una struttura basata su template non può contenere eventi.
Requisiti
Contesto attributo | Valore |
---|---|
Si applica a | class , struct |
Ripetibile | No |
Attributi obbligatori | coclass quando layout_dependent =true |
Attributi non validi | None |
Per altre informazioni, vedere Contesti di attributo.
Vedi anche
Attributi del compilatore
event_source
__event
__hook
__unhook
Attributi di classe