干净的解决方案,现在在构建尝试的同一行上收到4个错误

问题描述 投票:0回答:1

我当时正在处理旧代码,并且在进行更改时清理了解决方案。之后,我尝试进行编译,现在出现了4个错误:

  1. apilabelprinter.h(265):错误C2143:语法错误:在'constant'之前缺少')'
  2. apilabelprinter.h(265):错误C2143:语法错误:缺少';'在“常量”之前]
  3. apilabelprinter.h(265):错误C2059:语法错误:')'
  4. apilabelprinter.h(265):错误C2238:';'之前的意外标记]

我不知道是什么原因造成的。在清理之前,我正在构建/重建解决方案,但是现在无论执行什么操作,我都会不断遇到上述问题。有谁知道如何解决这一问题? IDE是visual studio2008。给出错误的代码行是:

virtual void    SetLineThickness( int t ) = 0;

发生问题的类:

class APIDLL_API ILabelGraphic : virtual public ILabelItem
    {
    public:

        /// Set the width (in pixels).
        virtual void    SetWidth( int w ) = 0;

        /// Set the height (in pixels).
        virtual void    SetHeight( int h ) = 0;

        /// Set the line thickness (in pixels).
        virtual void    SetLineThickness( int t ) = 0;

        enum eLineColor
        {
            eLineColor_Black,       ///< Plain ol' black line.
            eLineColor_White        ///< Stunning white line.
        };

        /// Set the line color.
        virtual void    SetLineColor( eLineColor lc ) = 0;
    };

ILabelItem类:

class APIDLL_API ILabelItem
    {
    public:
        /// Set the Label Text position (in pixels).
        virtual void    SetPosition( int x, int y ) = 0;

        /// Return the current object equivalent in ZPL code.
        virtual string  ToZPLCode() = 0;
    };
c++ visual-studio-2008
1个回答
0
投票

如评论中所述,给我带来麻烦的那一行是:

virtual void SetLineThickness( int t ) = 0; 

我很抱歉没有提供详细信息。整理完代码后,我弄清楚了它是什么。我在UI中设置了一个新的组合框,有一次它偶然被命名为“ t”。在继续进行其他代码更改之前,我抓住了这个并重新命名。结果,在Resource.h中已经定义了:

#define t  1014

由于没有对't'组合框的引用(在我离开.rc文件之前,我抓住了拼写错误并重命名了组合框),所以我能够删除上面的代码行,并且错误消失了。

© www.soinside.com 2019 - 2024. All rights reserved.