次の方法で共有


コンパイラ エラー C3763

'type': 'retval' および 'out' はデータ ポインター型でのみ使用できます

out または retval 属性は、pointer 型のパラメーターでのみ使用できます。 属性を削除するか、パラメーターを pointer 型にしてください。

次の例では C3763 が生成されます。

// C3763.cpp
#define _ATL_ATTRIBUTES 1
#include <atlbase.h>
#include <atlplus.h>
#include <atlcom.h>

[ module(name=test) ];

[ dispinterface, uuid("00000000-0000-0000-0000-000000000001") ]
__interface IF84 : IDispatch
{
   [id(0x00000002)]HRESULT m2([out]unsigned char);
};

[ coclass, uuid("00000000-0000-0000-0000-000000000002") ]
class CF84 : public IF84
{   // C3763
public:
   HRESULT __stdcall m2(unsigned char i)
   {
      return S_OK;
   }
};

int main()
{
}