1、generate(ForwardIterator first, ForwardIterator last, Generator gen):对序列中每个元素,依次调用函数gen的返回值赋值

    std::vector<int> c;
    c.resize(10);    //确保c在赋值时真正存在元素
    //用匿名函数的返回值给c中的每个元素赋值
    std::generate(c.begin(), c.end(), [](){
        return 100;
    });
    //输出c
    for (auto var : c)
    {
        std::cout << var << ",";
    }
    //打印结果:100,100,100,100,100,100,100,100,100,100,

2、generate_n(OutputIterator first, Size n, Generator gen):对序列中的n个元素,依次调用指定函数的返回值赋值

    std::vector<int> c;
    c.resize(10);    //确保c在赋值时真正存在元素
    //用匿名函数的返回值给c中的前5个元素赋值
    std::generate_n(c.begin(), 5, [](){
        return 100;
    });
    //输出c
    for (auto var : c)
    {
        std::cout << var << ",";
    }
    //打印结果:100,100,100,100,100,0,0,0,0,0,

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-10-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案