首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

完了完了,情况危急的时刻,居然脑子空了,问大家一个有关问题。

2013-03-04 
完了完了,情况危急的时刻,居然脑子空了,问大家一个问题。。这个类是这样的:class CIOleUILinkContainer : pu

完了完了,情况危急的时刻,居然脑子空了,问大家一个问题。。
这个类是这样的:


class CIOleUILinkContainer : public IOleUILinkContainer
    {
    private:
        ULONG                   m_cRef;
        LPCPage                 m_pPage;
        UINT                    m_iTenant;
        LPOLEUILINKCONTAINER    m_pDelIUILinks;

    public:
        BOOL                    m_fDirty;   //No reason to hide it.

    protected:
        STDMETHODIMP GetObjectInterface(DWORD, REFIID, LPLPVOID);

    public:
        CIOleUILinkContainer(LPCPage);
        ~CIOleUILinkContainer(void);

        BOOL FInit(void);
        BOOL IsDirty(void);

        STDMETHODIMP         QueryInterface(REFIID, LPLPVOID);
        STDMETHODIMP_(ULONG) AddRef(void);
        STDMETHODIMP_(ULONG) Release(void);

        STDMETHODIMP_(DWORD) GetNextLink(DWORD);
        STDMETHODIMP         SetLinkUpdateOptions(DWORD, DWORD);
        STDMETHODIMP         GetLinkUpdateOptions(DWORD, LPDWORD);
        STDMETHODIMP         SetLinkSource(DWORD, LPSTR, ULONG
                                 , ULONG FAR *, BOOL);
        STDMETHODIMP         GetLinkSource(DWORD, LPSTR FAR *
                                 , ULONG FAR *, LPSTR FAR *
                                 , LPSTR FAR *, BOOL FAR *
                                 , BOOL FAR *);
        STDMETHODIMP         OpenLinkSource(DWORD);
        STDMETHODIMP         UpdateLink(DWORD, BOOL, BOOL);


        STDMETHODIMP         CancelLink(DWORD);
    };




typedef CPage *LPCPage;


我在另外一个类里面调用:

BOOL CPages::FGetUILinkContainer(LPCIOleUILinkContainer *ppObj)
    {
    LPCIOleUILinkContainer  pObj;

    *ppObj=NULL;

    if (NULL==m_pPageCur)
        return FALSE;

    pObj=new CIOleUILinkContainer(m_pPageCur);

    if (NULL==pObj)
        return FALSE;

    if (!pObj->FInit())
        {
        delete pObj;
        return FALSE;
        }

    pObj->AddRef();
    *ppObj=pObj;
    return TRUE;
    }


就这一句:
pObj=new CIOleUILinkContainer(m_pPageCur);

居然给我报了下面的错:
1>PAGES.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CIOleUILinkContainer::CIOleUILinkContainer(class CPage *)" (??0CIOleUILinkContainer@@QAE@PAVCPage@@@Z),该符号在函数 "public: int __thiscall CPages::FGetUILinkContainer(class CIOleUILinkContainer * *)" (?FGetUILinkContainer@CPages@@QAEHPAPAVCIOleUILinkContainer@@@Z) 中被引用
1>PAGES.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall CIOleUILinkContainer::~CIOleUILinkContainer(void)" (??1CIOleUILinkContainer@@QAE@XZ),该符号在函数 "public: void * __thiscall CIOleUILinkContainer::`scalar deleting destructor'(unsigned int)" (??_GCIOleUILinkContainer@@QAEPAXI@Z) 中被引用
1>PAGES.obj : error LNK2019: 无法解析的外部符号 "public: int __thiscall CIOleUILinkContainer::FInit(void)" (?FInit@CIOleUILinkContainer@@QAEHXZ),该符号在函数 "public: int __thiscall CPages::FGetUILinkContainer(class CIOleUILinkContainer * *)" (?FGetUILinkContainer@CPages@@QAEHPAPAVCIOleUILinkContainer@@@Z) 中被引用

lz不行了,求大家帮助。。
[解决办法]
引用:
坑爹啊 大家都下班了么?


目测是类的构造函数只有定义没有实现 ATL+G一下看看?有装番茄没?

热点排行