简体   繁体   English

如何在C ++中使用for循环初始化字符串向量的向量?

[英]How to initialize a vector of vector of strings using for loop in C++?

I have problem with initializing the following vector: 我有初始化以下向量的问题:

int main()
{
    ...
    int size = classData.size();
    vector<vector<string>> arrayClass[size][3];     // <-- problem
    for(int i = 0 ; i < classData.size(); i++)
    {
        for(int j = 0 ; j < 3; j++)
        {
            arrayClass[i][j] = classData[j+i];
        }
    }
}

It says that size must be constant value. 它说size必须是恒定值。 Any thoughts? 有什么想法吗?

vector<vector<string>> arrayClass[size][3];

was meant to be: 本来应该是:

vector<vector<string>> arrayClass(size, vector<string>(3));

which takes advantage od std::vector 's constructor, which initializes the vector with appropriate size, filling it with empty strings. 它利用了od std::vector的构造函数,它用适当的大小初始化向量,用空字符串填充它。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM