Atrybut event_source

Tworzy źródło zdarzeń.

Uwaga

Atrybuty zdarzeń w natywnym języku C++ są niezgodne z językiem Standard C++. Nie są one kompilowane podczas określania /permissive- trybu zgodności.

Składnia

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

Parametry

type
Wyliczenie jednej z następujących wartości:

  • native dla niezarządzanych kodów C/C++ (ustawienie domyślne dla klas niezarządzanych).

  • com dla kodu COM. Użyj polecenia coclass , gdy=typecom . Ta wartość wymaga dołączenia następujących plików nagłówkowych:

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

optimize
Gdy typ to native, można określić optimize=size, aby wskazać, że istnieją 4 bajty magazynu (minimum) dla wszystkich zdarzeń w klasie lub optimize=speed (wartość domyślna), aby wskazać, że istnieją 4 * (liczba zdarzeń) bajtów magazynu.

decorate
Gdy typ to native, można określić decorate=false, aby wskazać, że rozwinięta nazwa w scalanych () pliku (.mrg) nie powinna zawierać otaczającej nazwy klasy. /Fx umożliwia generowanie .mrg plików. decorate=false, co jest wartością domyślną, powoduje w pełni kwalifikowane nazwy typów w scalanych plikach.

Uwagi

Atrybut event_source języka C++ określa, że klasa lub struktura, do której jest ona stosowana, będzie źródłem zdarzeń.

event_source jest używany w połączeniu z atrybutem event_receiver i __event słowem kluczowym. Użyj event_receiver polecenia , aby utworzyć odbiorniki zdarzeń. Użyj __event metod w źródle zdarzeń, aby określić te metody jako zdarzenia.

Uwaga

Klasa lub struktura szablonu nie może zawierać zdarzeń.

Wymagania

Kontekst atrybutu Wartość
Dotyczy class, struct
Powtarzalne Nie.
Wymagane atrybuty coclass Kiedy type=com
Nieprawidłowe atrybuty None

Aby uzyskać więcej informacji, zobacz Konteksty atrybutów.

Zobacz też

Atrybuty kompilatora
event_receiver
__event
__hook
__unhook
Atrybuty klasy