刚开始学习STL,这是第一个问题:
vector<int> vec1;
for(int i = 1; i <= 100; i++)
{
vec1.push_back(i);
cout << vec1[i] << endl;
}
您可能会看到我想将变量 i 推回到矢量 vec1 ,但输出为:
5832900
-319008141
0
等...
Process returned 0 (0x0) execution time : 0.210 s
Press any key to continue.
感谢您的一切。
答案 0 :(得分:3)
你按下背面,但打印出项目[i],这是一个结束(我从你的循环中的一个开始)。
vector<int> vec1;
for(int i = 0; i < 100; i++)
{
vec1.push_back(i+1);
cout << vec1[i] << endl;
}
答案 1 :(得分:1)
每次都会在矢量末尾打印一个。这将是您的代码的正确版本:
for(int i = 0; i < 100; i++)
{
vec1.push_back(i+1);
cout << vec1[i] << endl;
}