检查E:\myworkspace\svn code\comm\vc10version\Log8kComm(vc10)\libsrv\inc\PoolObj.h怎么会有 “^”: 这个符号

解决方案 »

  1.   

    工程属性中,Common Language Runtime的设置看看
      

  2.   

    我仔细比对过,应该是没有的 我将这个地方注释掉编译,发现其他的头文件也有类似的情况发生,我之前备份的基础版本以前是可以编译过的,但是现在也编译不过去,下面是完整的头文件代码:// PoolObj.h: interface for the CPoolObj class.
    //
    //////////////////////////////////////////////////////////////////////#if !defined(AFX_POOLOBJ_H__D378DE06_91D8_46C2_AA47_B0C5C05933C6__INCLUDED_)
    #define AFX_POOLOBJ_H__D378DE06_91D8_46C2_AA47_B0C5C05933C6__INCLUDED_#include <afxmt.h>#if _MSC_VER > 1000
    #pragma once
    #endif // _MSC_VER > 1000// 池接口
    class IPool
    {
    public:
    // 压栈
    virtual void Push(LPVOID pData) = 0;
    // 出栈
    virtual LPVOID Pop() = 0;
    };class CPoolObj : public IPool 
    {
    public:
    LPVOID Pop();
    void Push(LPVOID pData);
    CPoolObj();
    virtual ~CPoolObj(); CCriticalSection m_cs;
    CPtrList m_listData;
    };#endif // !defined(AFX_POOLOBJ_H__D378DE06_91D8_46C2_AA47_B0C5C05933C6__INCLUDED_)
      

  3.   

    将Common Language Runtime的设置由“无公共语言运行时支持”改成“公共语言运行时支持(/clr)” 虽然第一个报错会消失,但是我并未使用托管c++的东西;而且其他的报错也还在。我将此头文件类定义注释掉,其他类定义也有类似报错,看上去像对class关键字不支持 ,比较奇怪