包含不同大小的向量的结构,cpp

Structure that contains vectors with different sizes, cpp

本文关键字:结构 cpp 向量 包含不      更新时间:2023-10-16

我想声明一个结构,比如说,大小n=10,在结构的每个I位置都有一个向量。结构位点中的矢量具有不同的大小。

在matlab中,它可以使用struct来获得。它是如何在C++中完成的?

我认为您要查找的是向量的数组或向量。

例如:

#include <array>
#include <vector>
#include <iostream>
int main ()
{
    std::array<std::vector<int>, 10> Vectors;
    for (auto &i : Vectors)    //Loop through all 10 vectors in Vectors
    {
        for (int j=0; j<5; j++) //Push 1, 2, 3, 4, and 5 into each vector
        {
            i.push_back(j);
        }
    }
    return 0;
}
struct S {
    std::array<std::vector<int>, 10> data;
};

您也可以使用别名:

using arrayOfTenVectors = std::array<std::vector<int>, 10>;

当然,int是一个占位符。您可以将结构或别名设为template,并在向量内部使用一些T