C ++将多大小数组存储在变量中
C++ Store multi-sized arrays in a variable
我正在尝试在 C++ 中存储类似单元格的结构,其中它的元素可以具有不同长度的数组,如下例所示:
myMultiSizedArray = {
{ 1, 2, 4 },
{ 3, 5, 6, 7 },
{ 7, 8, 9, 10 },
{ 1, 3 },
{ 4, 5, 8 },
{ 9, 10 }
{ 5 } }
我正在考虑在 struct
中使用向量,如下所示:
struct f
{
std::vector<int> elements;
};
std::vector<f> myMultiSizedArray;
如果社区能给我他们的反馈,我将不胜感激。有更好、更有效的方法吗? C++ 是否为此提供了一种方法?谢谢
正如其他用户在评论中提到的,您可以在另一个向量中使用一个向量,如下面的代码片段所示:
using namespace std;
vector<vector<int>> myMultiSizedArray;
myMultiSizedArray.push_back({ 1, 2, 3, 4 });
myMultiSizedArray.push_back({ 6, 5, 200, 3, 2, 1 });
使用"vector< vector< int > >"更好
我正在尝试在 C++ 中存储类似单元格的结构,其中它的元素可以具有不同长度的数组,如下例所示:
myMultiSizedArray = {
{ 1, 2, 4 },
{ 3, 5, 6, 7 },
{ 7, 8, 9, 10 },
{ 1, 3 },
{ 4, 5, 8 },
{ 9, 10 }
{ 5 } }
我正在考虑在 struct
中使用向量,如下所示:
struct f
{
std::vector<int> elements;
};
std::vector<f> myMultiSizedArray;
如果社区能给我他们的反馈,我将不胜感激。有更好、更有效的方法吗? C++ 是否为此提供了一种方法?谢谢
正如其他用户在评论中提到的,您可以在另一个向量中使用一个向量,如下面的代码片段所示:
using namespace std;
vector<vector<int>> myMultiSizedArray;
myMultiSizedArray.push_back({ 1, 2, 3, 4 });
myMultiSizedArray.push_back({ 6, 5, 200, 3, 2, 1 });
使用"vector< vector< int > >"更好