C++使用另一个数组和新值初始化数组
C++ initialize array with another array and new values
我从python来到C++,如果可能的话,我想用数组做等效的事情:
both = [...]
a = [a1, a2] + both
[a1, a2, ...]
b = [b1, b2] + both
[b1, b2, ...]
你可以用std::vector
来做到这一点
std::vector<int> both = {...};
std::vector<int> a = {a1, a2};
a.insert(a.end(), both.begin(), both.end());
std::vector<int> b = {b1, b2};
b.insert(b.end(), both.begin(), both.end());
要对数组执行此类操作,您可以考虑以下代码
#include <iostream>
int main()
{
int both[] ={1, 2, 3};
std::cout << sizeof(both)/sizeof(*both);
int a[sizeof(both)/sizeof(*both) + 2] = {4, 4};
int b[sizeof(both)/sizeof(*both) + 2] = {5, 5};
for (int i = 0; i < sizeof(both)/sizeof(*both); ++i)
{
a[2+i] = both[i];
b[2+i] = both[i];
}
return 0;
}
但是由于您使用的是 c++,而不是 c,因此您可以真正考虑使用 c++ 标准库提供的容器之一。
相关文章:
- C++使用整数的压缩数组初始化对象
- C++17中函数模板中的静态数组初始化(MSVC 2019)
- 从另一个静态常量数组初始化静态常量数组(只需少量计算)
- 在 Python 和 c++ 2d 数组初始化之间.这是怎麽?为什么呢?
- 字节数组初始化会导致 DirectX 崩溃
- 使用 new 和 值进行数组初始化,但没有显式数量的元素
- 运行时C++数组初始化问题
- 使用带有参数包的数组的成员数组初始化类
- 仅通过C++中数组初始化的不同方法,即可在同一输入上获得两个不同的答案
- C++ 2 个指针数组初始化 C2440
- C++结构字符数组初始化
- C++中的多维数组初始化
- constexpr数组初始化
- C++引物动态数组初始化程序的数目超过大小
- 使用std::index_sequence对std::数组初始化进行包扩展
- 当 std 数组初始化太小时,C++会引发错误吗?
- 如何确定结构数组初始化的大小?
- Qt并发错误:数组初始化需要大括号括起来的初始值设定项列表
- 此代码中的数组初始化样式是什么?这是标准的吗?
- C++ 使用数组初始化时的 STL 向量内存管理