在程序的早期,我让程序一次生成一个 vector ,每次9个元素。这9组中的每组都是相关数据。稍后,我要一口气处理每9个小组(例如,每行打印9个小组)。

我应该怎么做?我的尝试:

 for (unsigned int i = 0; i < solutions.size()/9; i++)
 {
  cout << i << ": " << solutions[0+ i*9] << " " << solutions[1+ i*9] << " " << solutions[2 + i*9] << " " << solutions[3+ i*9] << " " << solutions[4+ i*9] << " " << solutions[5 + i*9] << " " << solutions[6+ i*9] << " " << solutions[7+ i*9] << " "<< solutions[8 + i*9] << endl;
  cout << endl;
 }

我显然在这里弄乱了。有什么帮助吗?

最佳答案

我建议使用一个结构。

struct elems {
    elements elems[9];
};
std::ostream& operator<<(std::ostream& out, const elems& elems) {
    for(int i = 0; i < 9; i++)
        out << elems.elems[i];
    return out;
}
std::vector<elems> solutions;

关于c++ - 如何处理 vector 中的数据组?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4782443/

10-13 21:27