Partager via


Erreur du compilateur C3763

'type' : 'retval' et 'out' ne peuvent apparaître que sur un type de pointeur de données

Les attributs out ou retval ne peuvent apparaître que sur les paramètres du pointeur de type. Supprimez l’attribut ou définissez le paramètre de pointeur de type.

L’exemple suivant génère l’erreur 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()
{
}