vector — C ++ Хранить многомерные массивы в переменной

Я пытаюсь сохранить клеточную структуру в 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 ++ средство для этого? Спасибо

0

Решение

Как упоминалось другими пользователями в качестве комментария, вы можете использовать вектор внутри другого вектора, как показано в следующем фрагменте кода:


using namespace std;
vector<vector<int>> myMultiSizedArray;

myMultiSizedArray.push_back({ 1, 2, 3, 4 });
myMultiSizedArray.push_back({ 6, 5, 200, 3, 2, 1 });
2

Другие решения

использовать «вектор< вектор< int>> «лучше

0