event_source-Attribut

Erstellt eine Ereignisquelle.

Hinweis

Ereignisattribute in systemeigenem C++ sind mit Standard C++ nicht kompatibel. Sie werden nicht kompiliert, wenn Sie den /permissive- Konformitätsmodus angeben.

Syntax

[ event_source(type, optimize=[speed | size], decorate=[true | false]) ]

Parameter

type
Eine Enumeration von einem der folgenden Werte:

  • native für nicht verwalteten C/C++-Code (Standard für nicht verwaltete Klassen).

  • com für COM-Code. Wird verwendetcoclass, wenn=typecom . Dieser Wert erfordert, dass Sie folgende Headerdateien einschließen:

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

optimize
Wenn der Typ lautet native, können Sie angeben optimize=size, dass es 4 Byte Speicher (Minimum) für alle Ereignisse in einer Klasse oder optimize=speed (Standard) gibt, um anzugeben, dass 4 * (Anzahl von Ereignissen) Bytes des Speichers vorhanden sind.

decorate
Wenn der Typ lautet native, können Sie angeben decorate=false, dass der erweiterte Name in der zusammengeführten (.mrg) Datei nicht den eingeschlossenen Klassennamen enthalten soll. /Fx ermöglicht das Generieren von .mrg Dateien. decorate=false, was die Standardeinstellung ist, führt zu vollqualifizierten Typnamen in der zusammengeführten Datei.

Hinweise

Das event_source C++-Attribut gibt an, dass die Klasse oder Struktur, auf die sie angewendet wird, eine Ereignisquelle ist.

event_source wird in Verbindung mit dem event_receiver Attribut und dem __event Schlüsselwort verwendet. Dient event_receiver zum Erstellen von Ereignisempfängern. Verwenden Sie __event für Methoden in der Ereignisquelle, um diese Methoden als Ereignisse anzugeben.

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 type=com vorliegt.
Ungültige Attribute Keine

Weitere Informationen finden Sie unter Attributkontexte.

Siehe auch

Compilerattribute
event_receiver
__event
__hook
__unhook
Klassenattribute