次の方法で共有


call_as

リモート関数が呼び出されたときにローカル関数が呼び出されるように、ローカル関数をリモート関数に割り当てられることができます。

[ call_as(
      function
) ]

パラメータ

  • function
    リモート関数が呼び出されたときに呼び出すローカル関数。

解説

C++ 属性 call_as の機能は、Microsoft インターフェイス定義言語 (MIDL: Microsoft Interface Definition Language) 属性 call_as と同じです。

使用例

call_as を使用して、リモートに呼び出せない関数 (f1) をリモートに呼び出せる関数 (Remf1) に割り当てる方法を次のコードに示します。

// cpp_attr_ref_call_as.cpp
// compile with: /LD
#include "unknwn.h"
[module(name="MyLib")];
[dual, uuid("00000000-0000-0000-0000-000000000001")]
__interface IMInterface {
   [local] HRESULT f1 ( int i );
   [call_as(f1)] HRESULT Remf1 ( int i ); 
};

必要条件

属性コンテキスト

対象

インターフェイス メソッド

複数回の適用

不可

必要な属性

なし

無効な属性

なし

属性コンテキストの詳細については、「属性コンテキスト」を参照してください。

参照

概念

IDL 属性

メソッド属性

local (C++)

ATL サンプル