使用 for 循环将数字添加到向量

Using For Loop to Add Numbers to a Vector

本文关键字:添加 向量 数字 for 循环 使用      更新时间:2023-10-16

我想使用 for 循环将数字 1 到 10 添加到空向量中。所以我知道它应该看起来像这样:

for (int i = 1; i <=10 ; i++){
//some code that adds 1 - 10 to a vector
}

代码运行后,我应该得到一个看起来像这样的向量:{1,2,3,4,5,6,7,8,9,10}。

有人可以帮我吗?

const int N = 10;
std::vector<int> v;
v.reserve( N );
for ( int i = 1; i <= N; i++ ) v.push_back( i );

const int N = 10;
std::vector<int> v( N );
int i = 1;
for ( int &x : v ) x = i++;

#include <numeric>
//...
const int N = 10;
std::vector<int> v( N );
std::iota( v.begin(), v.end(), 1 );

#include <algorithm>
//...
const int N = 10;
std::vector<int> v( N );
int i = 1;
std::for_each( v.begin(), v.end(), [&i]( int &x ) { x = i++; } );

#include <algorithm>
#include <iterator>
//...
const int N = 10;
std::vector<int> v;
v.reserve( N );
int i = 1;
std::generate_n( std::back_inserter( v ), N, [&i] { return i++; } );

所有这些方法都使用 for 循环

你可以通过简单地在向量中推送值来做到这一点,因为向量具有push_back的属性来增加其中的价值。

#include <iostream>
#include <vector>
int main ()
{
  std::vector<int> myvector;
  for(int i=1 ; i<=10 ;i++)
     myvector.push_back(i);
  return 0;
}

然后向量将包含:{1,2,3,4,5,6,7,8,9,10}

欲了解更多信息,您可以阅读以下参考资料:http://www.cplusplus.com/reference/vector/vector/push_back/