event_receiver
-Attribut
Erstellt einen Ereignisempfänger (Senke).
Hinweis
Ereignisattribute in systemeigenem C++ sind mit Standard C++ nicht kompatibel. Sie werden nicht kompiliert, wenn Sie den /permissive-
Konformitätsmodus angeben.
Syntax
[ event_receiver(type
[, layout_dependent=false]) ]
Parameter
type
Eine Enumeration von einem der folgenden Werte:
native
für nicht verwalteten C/C++-Code (Standard für systemeigene Klassen).com
für COM-Code. Dieser Wert erfordert, dass Sie diese Headerdateien einschließen:#define _ATL_ATTRIBUTES #include <atlbase.h> #include <atlcom.h>
layout_dependent
Geben Sie layout_dependent
nur an, wenntype
= com. layout_dependent
ist ein Boolescher Wert:
true
bedeutet, dass die Signatur der Stellvertretungen im Ereignisempfänger genau mit denen übereinstimmen muss, mit denen sie in der Ereignisquelle eingebunden sind. Die Namen des Ereignisempfängerhandlers müssen mit den namen übereinstimmen, die in der relevanten Ereignisquellschnittstelle angegeben sind. Wirdcoclass
verwendet, wennlayout_dependent
das isttrue
. Es ist etwas effizienter anzugebentrue
.false
(Standard) bedeutet, dass die aufrufende Konvention und die Speicherklasse (virtual
static
, und andere) nicht mit der Ereignismethode und den Handlern übereinstimmen müssen. Die Handlernamen müssen auch nicht mit den Namen der Ereignisquellschnittstellenmethode übereinstimmen.
Hinweise
Das event_receiver
C++-Attribut gibt an, dass die Klasse oder Struktur, auf die sie angewendet wird, ein Ereignisempfänger mit dem einheitlichen Ereignismodell von Microsoft C++ ist.
event_receiver
wird mit dem Attribut und den event_source
__hook
__unhook
Schlüsselwörtern verwendet. Dient event_source
zum Erstellen von Ereignisquellen. Verwenden Sie __hook
innerhalb der Methoden eines Ereignisempfängers, um Ereignisempfängermethoden ("hook") den Ereignissen einer Ereignisquelle zuzuordnen. Wird verwendet __unhook
, um sie zu trennen.
layout_dependent
wird nur für COM-Ereignisempfänger (type
=com
) angegeben. Der Standardwert für layout_dependent
lautet false
.
Hinweis
Eine von einer Vorlage gebildete Klasse oder Struktur kann keine Ereignisse enthalten.
Anforderungen
Attributkontext | Wert |
---|---|
Gilt für | class , struct |
Wiederholbar | No |
Erforderliche Attribute | coclass , wenn layout_dependent =true vorliegt. |
Ungültige Attribute | Keine |
Weitere Informationen finden Sie unter Attributkontexte.
Siehe auch
Compilerattribute
event_source
__event
__hook
__unhook
Klassenattribute