我正在使用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'

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

提前致谢,

欧金尼奥

最佳答案

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

virtual ~CRenderContext () {};

不需要分号。

关于c++ - 预期的asm或__attribute__在CRenderContext之前,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/990578/

10-11 00:53