Freigeben über


event_source

Erstellt eine Ereignisquelle.

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

Parameter

  • type
    Eine Enumeration mit einem der folgenden Werte:

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

    • com für COM-Code. Sie müssen coclass If type=com. Dieser Wert setzt voraus, dass Sie die folgenden Headerdateien umfassen:

         #define _ATL_ATTRIBUTES
         #include <atlbase.h>
         #include <atlcom.h>
      
  • optimize
    Wenn typeSystemeigenist, können Sie optimize=sizeangeben, um anzugeben, dass sie 4 Bytes Speicherplatz (Minimum) für alle Ereignisse in einer Klasse anzugeben oder in optimize=speed (Standard) * 4 gibt an, dass Ereignisse (#) Bytes Speicher.

  • ergänzen Sie
    Wenn typeSystemeigenist, können Sie decorate=falseangeben, um anzugeben, dass der erweiterte Name in der zusammengeführten Datei (.mrg) den einschließenden Klasse-Namen nicht einschließen soll. /Fx können Sie .mrg-Dateien generieren. decorate=false, der Standardwert ist, führt vollqualifizierte Typnamen in der zusammengeführten Datei.

Hinweise

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

event_source wird in Verbindung mit dem event_receiver-Attribut und dem __event-Schlüsselwort verwendet. Verwendung event_receiver , Ereignisempfänger erstellen. Verwenden Sie __event auf Methoden in der Ereignisquelle, um diese Methoden als Ereignisse anzugeben.

Hinweis

Eine von einer Vorlage gebildete Klasse oder Struktur kann keine Ereignisse enthalten.

Anforderungen

Attribut-Kontext

Betrifft

Klasse, struct

Wiederholbar

Nein

Erforderliche Attribute

coclass wenn type=COM

Ungültige Attribute

None

Weitere Informationen finden Sie unter Attribut-Kontexte.

Siehe auch

Referenz

event_receiver

__event

__hook

__unhook

Weitere Ressourcen

Compilerattribute

Klassenattribute

Attributes Samples