MinGW 4.5.2 - 初始化成员数组的问题
从 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试添加括号:
而不是
我手头没有编译器来检查它。
Try adding parens:
instead of
I don't have a compiler at hand to check it.
您的代码使用 gcc 4.6.1 (linux) 进行编译。
因此,如果有错误,它已被修复。
Your code compiles with gcc 4.6.1 (linux).
So if there was a bug it has been fixed.