Partager via


Attribut event_receiver

Crée un récepteur d'événements (récepteur).

Remarque

Les attributs d’événement en C++ natif sont incompatibles avec C++ Standard. Ils ne sont pas compilés quand vous spécifiez le mode de conformité /permissive-.

Syntaxe

[ event_receiver(type
   [, layout_dependent=false]) ]

Paramètres

type
Une énumération de l’une des valeurs suivantes :

  • native pour le code C/C++ non managé (par défaut pour les classes natives).

  • com pour le code COM. Cette valeur nécessite que vous incluiez ces fichiers d’en-tête :

    #define _ATL_ATTRIBUTES
    #include <atlbase.h>
    #include <atlcom.h>
    

layout_dependent
Spécifiez layout_dependent uniquement sitype= com. layout_dependent est un booléen :

  • true signifie que la signature des délégués dans le récepteur d’événements doit correspondre exactement à celles auxquelles ils sont connectés dans la source d’événement. Les noms des gestionnaires de récepteurs d’événements doivent correspondre aux noms spécifiés dans l’interface source d’événement appropriée. Utilisez coclass quand layout_dependent c’est true. Il est légèrement plus efficace de spécifier true.

  • false (valeur par défaut) signifie que la convention d’appel et la classe de stockage (virtual, staticet d’autres) n’ont pas besoin de correspondre à la méthode d’événement et aux gestionnaires. Les noms des gestionnaires n’ont pas besoin de correspondre aux noms de méthode d’interface source d’événement.

Notes

L’attribut event_receiver C++ spécifie que la classe ou la structure à laquelle elle est appliquée sera un récepteur d’événements, à l’aide du modèle d’événement unifié Microsoft C++.

event_receiverest utilisé avec l’attribut event_source et les __unhook __hook mots clés. Permet event_source de créer des sources d’événements. Utilisez __hook dans les méthodes d’un récepteur d’événements pour associer des méthodes de récepteur d’événements (« hook ») aux événements d’une source d’événement. Permet __unhook de les dissocier.

layout_dependent est spécifié uniquement pour les récepteurs d’événements COM (type=com). La valeur par défaut de layout_dependent est de false.

Remarque

Une classe ou structure modélisée ne peut pas contenir d'événements.

Spécifications

Contexte d’attribut Valeur
S’applique à class, struct
Renouvelable Non
Attributs requis coclass quand layout_dependent=true
Attributs non valides Aucune

Pour plus d’informations, consultez Contextes d’attribut.

Voir aussi

Attributs du compilateur
event_source
__event
__hook
__unhook
Attributs de classe