Atributo event_source

Crea un origen de eventos.

Nota:

Los atributos de eventos en C++ nativo no son compatibles con C++ estándar. No se compilan al especificar el modo de conformidad /permissive-.

Sintaxis

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

Parámetros

type
Enumeración de uno de los valores siguientes:

  • native para código de C/C++ no administrado (valor predeterminado para las clases no administradas).

  • com para código COM. Use coclass si type=com. Este valor requiere que se incluyan los archivos de encabezado siguientes:

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

optimize
Si type es native, puede especificar optimize=size para indicar que hay 4 bytes de almacenamiento (mínimo) para todos los eventos de una clase u optimize=speed (valor predeterminado) para indicar que hay 4 * (número de eventos) bytes de almacenamiento.

decorate
Si type es native, puede especificar decorate=false para indicar que el nombre expandido del archivo combinado (.mrg) no debe incluir el nombre de la clase envolvente. /Fx permite generar archivos .mrg. decorate=false, que es el valor predeterminado, da lugar a nombres de tipo completo en el archivo combinado.

Comentarios

El atributo event_source de C++ especifica que la clase o estructura a la que se aplica será un origen del evento.

event_source se usa junto con el atributo event_receiver y la palabra clave __event. Use event_receiver para crear receptores de eventos. Use __event en métodos del origen del evento para especificar dichos métodos como eventos.

Nota:

Una estructura o clase basada en plantilla no puede contener eventos.

Requisitos

Contexto de atributo Valor
Se aplica a class, struct
Reiterativo No
Atributos requeridos coclass cuando type=com
Atributos no válidos Ninguno

Para obtener más información, vea Contextos de atributo.

Consulte también

Atributos del compilador
event_receiver
__event
__hook
__unhook
Atributos de clase