out 特性

[ Out ] 特性标识从被调用过程返回到调用过程的指针参数,该参数从服务器 (到客户端) 。

[ [function-attribute-list] ] type-specifier [pointer-declarator] function-name(
    [ out [ , parameter-attribute-list ] ] type-specifier [declarator]
    , ...
);

parameters

函数-属性列表

指定应用于函数的零个或多个属性。 有效的函数属性为 [ callback ] 、 [ local、 ] 指针属性 [ ref ] 、 [ unique ] 或 [ ptr ] ; 以及使用情况属性 [ 字符串 ] 、 [ 忽略和 ] [ 上下文 _ 句柄 ] 。

类型说明符

指定 基 _ 类型结构联合枚举 类型或类型标识符。 可选的存储规范可以在 类型说明符 之前。

指针-声明符

指定零个或多个指针声明符。 指针声明符与 C 中使用的指针声明符相同。它从 * 指示符、修饰符(如 far)和限定符 常量构造而来。

函数名称

指定远程过程的名称。

参数-属性列表

指定零个或多个适用于指定参数类型的特性。 带有 out 特性的参数属性 [ ] 还可以将方向属性 [ ] 设置为 out; 字段属性 [ 首先 _为,最后是, ] [ _ ] [ length _ 为,max 为, ] [ _ ] [ size _ 为, ] and [ 开关 _ 类型 ] ; 指针特性 [ ref ] 、 [ unique ] 或 [ ptr ] ; 以及使用特性 [ 上下文 _ 句柄 ] 和 [ 字符串 ] 。 Usage 属性 [ ignore ] 不能用作参数属性。 用逗号分隔多个属性。

指定标准声明符,如标识符、指针声明符和数组声明符。 有关详细信息,请参阅 数组和 Sized-Pointer 特性数组以及 数组和指针。 函数声明符中的参数声明符(如参数名称)是可选的。

备注

[ Out ] 特性指示一个参数,该参数在内存中充当指针及其关联的数据将从调用过程传递回调用过程。

[ Out ] 特性必须是指针。 DCE IDL 编译器要求存在显式 * 作为参数声明中的指针声明符。 Microsoft IDL 提供一个扩展,该扩展可删除此要求,并允许数组或以前定义的指针类型。

中的相关属性 [ ] 指示参数将从调用过程传递给被调用过程。 [ In ] 和 [ out ] 特性指定参数的传递方向。 参数可以定义为 [ ] 仅限、 [ ] 纯或 [ inout ] 。

[ ] 当调用远程过程并且服务器分配对象的内存时,将假定仅限 out 参数为 undefined。 由于顶级指针/参数必须始终指向有效存储,因此不能为 NULL,不能将 [ out ] 应用于顶级的 [ 唯一 ] 或 [ ptr ] 指针。 属于 [ 唯一 ] 或 [ ptr ] 指针的参数必须是 [ in ] 和 [ out ] 参数。

示例

HRESULT MyFunction([out] short * pcount);

另请参阅

嵌套

MIDL 基类型

回调 (callback)

const

上下文 _ 句柄

枚举

第一个 _ 是

暂且

最后一个 _ 为

长度 _ 为

地方

最大值 _ 为

ptr

ref

大小 _ 为

类似

结构

开关 _ 类型

交集

针对