在CRenderContext之前预期的asm或__attribute__

时间:2009-06-13 12:08:33

标签: c++ linux codeblocks

我正在使用CodeBlocks IDE在Linux下开发一个小应用程序。 我用以下代码定义了一个类:

class CRenderContext
{
public:     /*instance methods*/
             CRenderContext() :
             m_iWidth(0), m_iHeight(0),
             m_iX(0), m_iY(0),
             m_bFullScreen(false), m_bShowPointer(false) {};

             CRenderContext  (int                    iWidth,
                              int                    iHeight,
                              int                    iX,
                              int                    iY,
                              bool                   bFullScreen,
                              bool                   bShowPointer)
                              :
                              m_iWidth(iWidth), m_iHeight(iHeight),
                              m_iX(iX), m_iY(iY),
                              m_bFullScreen(bFullScreen), m_bShowPointer(bShowPointer) {};
        virtual ~CRenderContext () {};

    public:     /*instance data*/
        int     m_iWidth;
        int     m_iHeight;
        int     m_iX;
        int     m_iY;
        bool    m_bFullScreen;
        bool    m_bShowPointer;
};

编译上面的代码时,我总是遇到以下错误:

错误:在CRenderContext之前预期'=',',',';','asm'或'attribute'

有关如何解决错误的任何想法?

提前致谢,

欧金尼奥

1 个答案:

答案 0 :(得分:4)

您正在将其编译为C代码,而不是C ++。您可能需要将源文件重命名为.cpp扩展名。虽然你有一些多余的分号,但代码可以完美地编译(如C ++)和g ++和comeau。例如:

virtual ~CRenderContext () {};

不需要分号就可以了。