c++ - 我没有遵循标准吗?

标签 c++

如果我有这样的东西:

MyStruct clip;

clip = {16, 16, 16, 16};

我从编译器收到以下警告: 警告:扩展初始化列表仅适用于 -std=c++0x 或 -std=gnu++0x

如果我在编译器中激活 -std=c++0x,它不会给出任何警告。但我不确定我是否遵循标准。那么我应该停用该标志并分别初始化结构的每个成员吗?

谢谢。

最佳答案

对于初始化,您应该能够使用 MyStruct clip = {16, 16, 16, 16}; 但是正如您在当前的 C++ 标准中发现的那样,您不能分配给括号列表。在 C++1x 中,您可以使用扩展语法。

关于c++ - 我没有遵循标准吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3144726/

相关文章:

c++ - 在 Objective-C/C++ 中使用 Signals2 将 C++ 模型连接到 Controller

android - 如何在 Qt/Android 的默认外部编辑器中打开文件

c++ - 是否有可能为 std::map 重载 << 运算符,其中包含对 std:string 和 std::vector<int>?

c++ mysql连接器检查结果集为空

c++ - 将链递归插入内存失败

c++ - 如何从 2 个子类修改基类变量

c# - 你将如何通过 com 传递 C# 对象?

c++ - 为什么此宏没有扩展?

c++ - VS 2008 调试 - 查找加载了哪个对话框

c++ - C++中的matlab tic toc等价物