加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

使用编译时已知的常量array1初始化C array2

发布时间:2020-12-16 10:34:50 所属栏目:百科 来源:网络整理
导读:我有以下数组: int const A[4] = { 0,1,2,3 }; 我想初始化一个重复的数组,如下所示: int a[4] = A; 如果我在cygwin上运行g 4.8.2如下: g++ --std=c++11 myfile.cpp 我收到以下错误: myfile.cpp:16:16: error: array must be initialized with a brace-en
我有以下数组:

int const A[4] = { 0,1,2,3 };

我想初始化一个重复的数组,如下所示:

int a[4] = A;

如果我在cygwin上运行g 4.8.2如下:

g++ --std=c++11 myfile.cpp

我收到以下错误:

myfile.cpp:16:16: error: array must be initialized with a brace-enclosed initializer
    int a[4] = A;
               ^

但是,显然“int a [4] = {A};”也不会起作用.有没有办法使用简单的赋值语句从A初始化我的数组a而不诉诸于:

int a[4] = { A[0],A[1],A[2],A[3] };

解决方法

而是使用标准类std :: array.

#include <array>

//...

const std::array<int,4> A = { 0,3 };
std::array<int,4 > a = A;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读