event_source
属性
创建事件源。
注意
本机 C++ 中的事件特性与标准 C++ 不兼容。 指定 /permissive-
一致性模式时,它们不会编译。
语法
[ event_source(type, optimize=[speed | size], decorate=[true | false]) ]
参数
type
以下值之一的枚举:
native
,用于非托管 C/C++ 代码(非托管类的默认值)。com
,用于 COM 代码。 当type
=com
时使用coclass
。 此值需要包含以下头文件:#define _ATL_ATTRIBUTES #include <atlbase.h> #include <atlcom.h>
optimize
当类型为 native
时,可以指定 optimize=size
以指示对于类中的所有事件存在 4 个字节的存储(最小值),也可以指定 optimize=speed
(默认值)以指示存在 4 *(事件数)个字节的存储。
decorate
当类型为 native
时,可以指定 decorate=false
,以指示合并 (.mrg
) 文件中的扩展名称不应包含封闭类名。 /Fx
让你能生成 .mrg
文件。 decorate=false
(这是默认值)会导致合并文件中存在完全限定的类型名称。
注解
event_source
C++ 属性指定应用它的类或结构会是事件源。
event_source
与 event_receiver
属性和 __event
关键字结合使用。 使用 event_receiver
创建事件接收器。 对事件源中的方法使用 __event
可将这些方法指定为事件。
注意
模板化的类或结构不能包含事件。
要求
特性上下文 | 值 |
---|---|
适用于 | %> |
可重复 | 否 |
必需的特性 | 如果为 type =com ,则为 coclass |
无效的特性 | 无 |
有关详细信息,请参见 特性上下文。