矢量的C 向量故障

Trouble with C++ Vector of Vectors

本文关键字:向量 故障      更新时间:2023-10-16

我正在尝试按行中的txt文件读取,其中每行可能具有不同数量的元素。我找到了向量的向量,但是我不知道为什么我的只是写信给向量内的第一个向量。所有其他人都是空的。

这是数据中的代码读物片段:

vector<vector<int>> all(numverts);
for (int i = 0; i <= (numverts - 1); i++) {
  // reads a line of data
  vector<int> edges;
  int connect;
  while (filein >> connect) {
    edges.push_back(connect);
  }
  all[i] = edges;
  edges.clear();
}

您可以使用getlinestringstream。这样,单独读取文件的每一行,然后输入向量(通过弦乐)。

vector<vector<int> > all(numverts);
for(int i = 0; i < numverts; i++)
{
    std::string line;
    std::getline(filein, line);
    std::stringstream lineStream(line);
    int connect;
    while(lineStream >> connect)
    {
        all[i].push_back(connect);
    }
}