我正在尝试为 C++ Primer 中的一个练习写一个答案。这是我的代码:
int main()
{
vector<int> v1;
vector<int> v2(10);
vector<int> v3(10, 42);
vector<int> v4{10};
vector<int> v5{10, 42};
vector<string> v6{10};
vector<string> v7{10, "hi"};
for(auto i : v2)
cout << v2[i] << " " <<;
return 0;
}
问题是我在 for 循环中遇到了一个通用的“语法错误”。我已经尝试了声明 i asint
和声明的所有组合&i
,但没有运气。这本书做了一个类似的for
循环,如下所示:
vector<int> v{1, 2, 3, 4, 5, 6, 7, 8, 9};
for (auto &i : v)
i *= i;
for (auto i : v)
cout << i << " ";
cout << endl;
我在做什么不一样?