gpt4 book ai didi

c++ - Shapes 不是类或命名空间

转载 作者:太空宇宙 更新时间:2023-11-04 15:07:28 26 4
gpt4 key购买 nike

我刚刚从 Windows (Visual Studio) 切换到 Linux (Mint),现在我正在将 QTCreator 用于纯 C++ 项目。虽然当我尝试编译我正在使用 VS2010 的项目时一切似乎都工作正常,但 g++ 不接受以下语法。

enum{
LINE,
POLYGON,
TRIANGLE
}Shapes;

...很多代码...

gEngine.AddItem(1,0,Shapes::POLYGON,0,0,0);
gEngine.AddItem(1,2,Shapes::POLYGON,400,400,-1);
gEngine.AddItem(1,2,Shapes::POLYGON,800,400,-1);
gEngine.AddItem(1,2,Shapes::POLYGON,800,800,-1);
gEngine.AddItem(1,2,Shapes::POLYGON,400,800,-1);
gEngine.AddItem(1,2,Shapes::POLYGON,400,400,-1);
gEngine.AddItem(1,1,Shapes::POLYGON,0,0,0);

(G++) 返回:Shapes 不是类或命名空间;即使它与 VS2010 完美编译。

最佳答案

我觉得你想要

enum Shapes{
LINE,
POLYGON,
TRIANGLE
};

这声明了一个枚举类型 Shapes,但是您所定义的类型(没有名称)的变量 Shapes 是一个枚举。

关于c++ - Shapes 不是类或命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10506407/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com