通过方法参数ATL C ++传输对象

时间:2016-10-24 11:50:45

标签: c++ com atl ole

您好我尝试返回我的OLE对象(SerwerError),如下所示:

[propget, id(2)] HRESULT LastError([out, retval] IServerError* pVal);

但我收到错误:

syntax error : expecting a type specification near "IServerError"

我无法找到解决方案......我如何传递Ole对象([in] / [out])

CServerError :

1 个答案:

答案 0 :(得分:1)

[out]接口指针参数应该是“指向接口指针的指针”类型:

[out, retval] IServerError** pVal

即第二个星号。您将返回IServerError*值。然后,IServerError接口本身应该足够早地定义,以便它在方法声明时就是已知类型。