如何在c++中初始化多维数组
How to initialize a multidimensional array in c++?
我想制作一个数组并为其设置值,就像这个double MyArray[][] = {{0.1,0.8},{0.4,0.6},{0.3,0.9}}
一样。然而,我不想做这个MyArray[0][0] = 0.1; MyArray[0,1] = 0.8; MyArray[1][0] = 0.4;
等等,但我不知道该怎么做。提前感谢您的帮助:)。
写就足够了
double MyArray[][2] = {{0.1,0.8},{0.4,0.6},{0.3,0.9}};
^^^
二维数组是一维数组,其元素依次为数组。创建阵列时,应知道其元素的大小。
你可以通过以下方式来想象
typedef double T[2];
//..
T MyArray[] = {{0.1,0.8},{0.4,0.6},{0.3,0.9}};
对于这些陈述,
MyArray[0][0] = 0.1; MyArray[0,1] = 0.8; MyArray[1][0] = 0.4;
那么如果你要像这个一样声明数组
#include <array>
//...
std::array<double, 2> MyArray[3];
你可以写
MyArray[0] = { 0.1, 0.8 };
MyArray[1] = { 0.4, 0.6 };
MyArray[2] = { 0.3, 0.9 };
您至少需要告诉编译器内部维度是什么:
double MyArray[][2] = {{.1, .8},{.4, .6} /* etc... */ };
相关文章:
- 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 向量内存管理