我做了一个出接口,需要在invoke()中调用某个类的成员函数,但是出现如下错误:
member from enclosing class is not a type name, static, or enumerator请问改如何解决?
member from enclosing class is not a type name, static, or enumerator请问改如何解决?
解决方案 »
- 弱智问题,点击主窗口按钮,出现次级窗口,要在次级窗口里做一些操作,改变主窗口里的某些变量,怎么弄》?
- 为什么我装的Visual studio 2008用不了???
- 急问,如何在任务管理器的Application列表中将我的窗口项隐藏
- 请问怎么在对话框中创建工具栏?
- 如何控制一个WORD文档的打印份数
- 怎么DLL工程,使其不依赖DEF文件?
- Menu中如何加入快捷键
- 在v86模式下为什么不能用单步调试???????大仙指路
- 向各位请教,我有个hardware decoder,要播放*.vob文件,之前要做些什么工作??
- vs中新建MFC,编译时出错,急求
- 如何在控件中打开一个新的网页?急
- #include <iostream>和#include <iostream.h>有什么区别?
class CPNADlg : public CDialog
{public:
CPNADlg(CWnd* pParent = NULL,CFFMeasV4View *pView = NULL);
//这是一个eventsink类
BEGIN_INTERFACE_PART(EventSink, IDispatch)
STDMETHOD(Invoke)(DISPID, REFIID, LCID, unsigned short, DISPPARAMS*, VARIANT*, EXCEPINFO*, unsigned int*);
END_INTERFACE_PART(EventSink)
public:
//这是CPNADlg类的成员函数
void GetPNAMeasData();
现在我想要在invoke()函数中调用这个成员函数,出现了如下错误:
STDMETHODIMP CPNADlg::XEventSink::Invoke(
DISPID dispid, REFIID, LCID, unsigned short wFlags,
DISPPARAMS* pDispParams, VARIANT* pvarResult,
EXCEPINFO* pExcepInfo, unsigned int* puArgError)
{
if (dispid == 0x00000003)
{
//被调用的CPNADlg类的成员函数
GetPNAMeasData();
}
return S_OK;}
错误:CPNADlg::GetPNAMeasData' : member from enclosing class is not a type name, static, or enumerator
请问这个问题该如何解决,xeventsink类应该是CPNADlg类的子类,为什么还会出现这种错误呢?
谢谢!