retval 属性
[retval] 属性は、メンバーの戻り値を受け取るパラメーターを指定します。
return-type function-name(
[out, retval [, optional-attributes]] data-type * param-name,
...);
-
return-type
-
リモート プロシージャの戻り値のデータ型。
-
function-name
-
リモート プロシージャの呼び出しに使用される名前。
-
optional-attributes
-
0 個以上の 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);