C ++ 11中的数组[重复]

Posted

技术标签:

【中文标题】C ++ 11中的数组[重复]【英文标题】:Array in C++ 11 [duplicate] 【发布时间】:2014-11-18 08:11:21 【问题描述】:

如何使用聚合初始化,因为以下行给了我错误(预期为;

 std::array<int, 5> i_array1 3, 4, 5, 1, 2 ; 

但是我能够编译以下代码行

std::array<int, 5> a2 = 3, 2, 1,10,12;

我正在尝试适应新的数组容器。 我正在使用 Visual Studio 2012 Ultimate。 寻求任何帮助。 问候

【问题讨论】:

第一个版本很好。也许您的编译器不完全支持 C++11。 IIRC,这在 VS2012 中没有完全实现。它在 VS2013 中编译 你不能让编译器支持它。您只能升级到 afaik 正确支持的 VS2013。 @AliKazmi 除非您在 Microsoft 从事他们的编译器工作,并且可以为 VS2012 编译器制作私有补丁,否则您不能。获得更好支持的唯一方法是升级到较新的版本。 如果可以的话,升级到VS2013。 【参考方案1】:

根据this page on MSDN,Visual Studio 2012 不支持初始化列表,但 2013 支持。

【讨论】:

谢谢,你节省了我的时间 这是错误的。 std::array 是一个聚合,不使用 initializer_lists。

以上是关于C ++ 11中的数组[重复]的主要内容,如果未能解决你的问题,请参考以下文章

用向量填充c ++中的简单动态数组[重复]

将二维数组指针传递给c ++中的函数[重复]

获取嵌套数组/对象的数组中的所有唯一值(删除重复项)

C语言,删除数组中的重复数字然后输出

将文件中的数据转换为整数数组(C)

从c中的struct数组中删除重复名称[重复]