gpt4 book ai didi

c++ - 在 C++ 中将一个数组复制到另一个数组

转载 作者:行者123 更新时间:2023-11-30 00:50:35 26 4
gpt4 key购买 nike

我有一个这样创建的数组:

std::vector<int> data(n);

我有另一个数组 b (c Array b[]) 有 n 个 int 值。我想将这些值放入 data:

for (int i =0 ; i<n, i++) {
data[i] = b[i];
}

在 C++ 中是否有任何其他方法可以将一个数组复制到另一个数组中?

最佳答案

从你的问题中还不完全清楚,但如果 bdata都是std::vector<int> ,然后你可以做五件相关的事情:

正在初始化一个新的datab

std::vector<int> data = b; // copy constructor

正在初始化一个新的datab

std::vector<int> data(begin(b), begin(b) + n); // range constructor

正在复制 b完全进入现有的data (覆盖当前的 data 值)

data = b; // assignment

复制第一个n b 的元素进入现有 data (覆盖当前的 data 值)

data.assign(begin(b), begin(b) + n); // range assignment

追加第一个n b 的元素到现有 data

data.insert(end(a), begin(b), begin(b) + n); // range insertion

您还可以使用 end(b)而不是 begin(b) + n如果b正好有 n元素。如果b是一个 C 风格的数组,你可以做一个 using std::begin;using std::end ,并且范围构建/分配/插入将继续工作。

关于c++ - 在 C++ 中将一个数组复制到另一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24550993/

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