gpt4 book ai didi

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

转载 作者:太空狗 更新时间:2023-10-29 19:43:33 25 4
gpt4 key购买 nike

我有以下数组:

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::copy(A, A+4, a)

或者,通过使用 std::array 具有您想要的简单复制方法:

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

关于c++ - 使用编译时已知的常量 array1 初始化 C++ array2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24940574/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com