MinGW 4.5.2 - 初始化成员数组的问题

发布于 2024-12-04 03:17:16 字数 460 浏览 1 评论 0原文

从 gcc 4.4 开始就应该支持初始化列表(我也可以在其他地方使用它们而不会出现问题),但是当我尝试使用 MinGW 4.5.2 编译它时,我收到“错误的数组初始值设定项”错误。我使用 -std=c++0x 进行编译。 “点”只是一个 Vector2D[4]。

我做错了什么?

BoundingBox::BoundingBox(float width, float height, float posX, float posY) :
points{
          Vector2D{posX,posY},
          Vector2D{posX+width, posY},
          Vector2D{posX+width, posY+height},
          Vector2D{posX, posY+height}
    } //error: bad array initializer
{

}

Initializer lists should be supported since gcc 4.4 (and I could also use them in other places without problems), yet when I try to compile this with MinGW 4.5.2 I get a "bad array initializer" error. I do compile with -std=c++0x. "points" is just a Vector2D[4].

What am I doing wrong?

BoundingBox::BoundingBox(float width, float height, float posX, float posY) :
points{
          Vector2D{posX,posY},
          Vector2D{posX+width, posY},
          Vector2D{posX+width, posY+height},
          Vector2D{posX, posY+height}
    } //error: bad array initializer
{

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

十秒萌定你 2024-12-11 03:17:16

尝试添加括号:

points({Vector2D{posX, posY}, ...})

而不是

points{Vector2D{posX, posY}, ...}

我手头没有编译器来检查它。

Try adding parens:

points({Vector2D{posX, posY}, ...})

instead of

points{Vector2D{posX, posY}, ...}

I don't have a compiler at hand to check it.

小霸王臭丫头 2024-12-11 03:17:16

您的代码使用 gcc 4.6.1 (linux) 进行编译。

因此,如果有错误,它已被修复。

Your code compiles with gcc 4.6.1 (linux).

So if there was a bug it has been fixed.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文