代码之家  ›  专栏  ›  技术社区  ›  mega_creamery

c++Visual Studio错误,通过更改类名解决

  •  1
  • mega_creamery  · 技术社区  · 9 年前

    我试图使用本页的指南来编译简单的类声明。

    http://www.cplusplus.com/doc/tutorial/classes/

    它是直接从网站上粘贴的,不允许我编译。我正在使用visual studio 2010。

    这是我收到的错误:

    错误C2146:语法错误:缺少“;”标识符“rec”之前

    更改类名解决了这个问题,但我找不到Rectangle是为VS或C++相关的任何东西保留的单词。

    下次我该怎么解决?

    class Rectangle
    {
        public:
          int width;
          int height;
    };
    
    int main( )
    {   
       Rectangle rec;
    }
    
    class Rector
    {
       public:
        int width;
        int height;
    };
    
    int main( )
    {   
       Rector rec;
    }
    
    1 回复  |  直到 9 年前
        1
  •  3
  •   melak47    9 年前

    如果包含Windows。h或Wingdi。h、 您的类名可能与 Rectangle 作用

    您有几个选项:

    1. 把你的 Rectangle 命名空间中的类
    2. 不包括Windows。h除非绝对必要
    3. 请使用 class Rectangle 到处都可以消除函数和类之间的歧义(作为最后的手段)