編譯器錯誤 C3707
'function' : dispinterface 方法必須具有 dispid
如果您使用 dispinterface
方法,則必須將 它指派為 dispid
。 若要修正此錯誤,請將 指派 dispid
給 dispinterface
方法,例如,在下列範例中取消 id
批注 方法上的 屬性。 如需詳細資訊,請參閱屬性 dispinterface 和 id。
下列範例會產生 C3707:
// C3707.cpp
#include <atlbase.h>
#include <atlcom.h>
#include <atlctl.h>
[module(name="xx")];
[dispinterface]
__interface IEvents : IDispatch
{
HRESULT event1([in] int i); // C3707
// try the following line instead
// [id(1)] HRESULT event1([in] int i);
};
int main() {
}