retval 特性
[retval] 属性指定接收成员返回值的参数。
return-type function-name(
[out, retval [, optional-attributes]] data-type * param-name,
...);
-
return-type
-
远程过程的返回值的数据类型。
-
function-name
-
用于调用远程过程的名称。
-
optional-attributes
-
零个或多个 MIDL 属性。
-
data-type
-
通过 参数传递的数据的类型。
-
param-name
-
参数的标识符名称。
可以对描述方法或获取属性的接口成员的参数使用 [retval] 属性。 (具有 [propget] 属性的方法的最后一个参数上需要特性。) 参数必须具有 [out] 属性,并且必须是指针类型。
不能将 [可选] 属性应用于 [retval] 参数。
MIDL 编译器接受从左到右) (以下参数排序:
- 必需的参数 (没有 [defaultvalue] 或 [可选] 属性) 的参数。
- 具有或不带 [defaultvalue] 属性的可选参数。
- 具有 [可选] 属性且不带 [defaultvalue] 属性的参数。
- [lcid] 参数(如果有)。
- [retval] 参数。
具有 [retval] 属性的参数不会显示在面向用户的浏览器中。
IDLFLAG_FRETVAL
HRESULT MyMethod([out, retval] InMyFace** ReturnVal);
HRESULT MyOtherMethod([out, retval] VARIANT_BOOL* ReturnVal);