1

什么类型it?它说我需要声明它。

记录阵列是:std::vector<std::pair<int, QString> > recordingArray;

string line = "";
auto it = recordingArray.begin();

while(it != recordingArray.end())
{
  line.append(*it);
  line.append(',');
}

此外,它不是自动类型。

4

2 回答 2

6

类型是std::vector<std::pair<int, QString> >::iterator,编译器应该能够弄清楚。如果这不适用于auto,则需要在编译器中启用 C++11 支持,例如-std=c++0x在 g++ 和 clang 中。auto(从 C++03 变为 C++11的含义)。

于 2012-12-10T22:21:45.453 回答
1

这将是一个std::vector<*TheTypeInArray*>::iterator. 所以你可以声明它或者启用 c++11 支持,这样你就可以使用auto.

于 2012-12-10T22:23:13.663 回答