按用法分的特性
本主题根据应用特性的 C++ 语言元素列出这些特性。
如果特性后面的元素不在特性范围中,则特性块将被视为注释。
Attribute | 说明 |
---|---|
模块特性 | 适用于模块特性。 |
接口特性 | 适用于 C++ 关键字 __interface。 |
类特性 | 适用于 C++ 关键字。 |
方法特性 | 适用于类、组件类或接口中的方法。 |
参数特性 | 适用于类或接口中的方法的参数。 |
数据成员特性 | 适用于类、组件类或接口中的数据成员。 |
Typedef、Enum、Union 和 Struct 特性 | 适用于 C++ 关键字。 |
数组特性 | 适用于数组或 SAFEARRAY 。 |
独立特性 | 操作更类似于代码行,但不对 C++ 关键字进行操作。 独立特性语句需要行末尾有一个分号。 |
自定义属性 | 允许用户扩展元数据。 |
模块特性
以下特性只能应用于模块属性。
Attribute | 说明 |
---|---|
helpstringdll | 指定要用于执行文档字符串查找(本地化)的 DLL 名称。 |
接口特性
以下特性适用于 C++ 关键字 interface(或 __interface)。
Attribute | 说明 |
---|---|
async_uuid | 指定可指示 MIDL 编译器同时定义 COM 接口的同步版本和异步版本的 UUID。 |
custom | 让你定义自己的属性。 |
dispinterface | 将一个接口作为调度接口置于 .idl 文件中。 |
dual | 将一个接口作为 dual 接口置于 .idl 文件中。 |
export | 使数据结构置于 .idl 文件中。 |
helpcontext | 指定允许用户在帮助文件中查看有关此元素的信息的上下文 ID。 |
帮助文件 | 设置类型库的帮助文件的名称。 |
helpstring | 指定一个字符串,用于描述应用该字符串的元素。 |
helpstringcontext | 指定 .hlp 或 .chm 文件中帮助主题的 ID。 |
helpstringdll | 指定要用于执行文档字符串查找(本地化)的 DLL 名称。 |
hidden | 指示该项虽然存在,但不应在面向用户的浏览器中显示。 |
library_block | 将构造置于 .idl 文件的库块内。 |
local | 在接口标头中使用时,允许将 MIDL 编译器用作标头生成器。 在单个函数中使用时,指定不为其生成存根的本地过程。 |
nonextensible | 指定 IDispatch 实现仅包含接口说明中列出的属性和方法,并且不能在运行时使用其他成员进行扩展。 此特性仅在双重接口上有效。 |
odl | 将接口标识为对象说明语言 (ODL) 接口。 |
对象 | 标识自定义接口。 |
oleautomation | 指示接口与自动化兼容。 |
pointer_default | 指定除参数列表中显示的顶级指针以外的所有指针的默认指针属性。 |
ptr | 将指针指定为全指针。 |
restricted | 指定不能随意调用库中的哪些成员。 |
uuid | 提供库的唯一 ID |
必须遵循以下规则来定义接口:
默认调用约定是 __stdcall。
如果你未提供 GUID,系统将为你提供 GUID。
不允许使用重载方法。
如果未指定 uuid 特性并在不同的特性项目中使用相同的接口名称,则会生成相同的 GUID。