当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ std::iota用法及代码示例


存储顺序递增
分配val的[first,last]个连续值范围内的每个元素,就像在写入每个元素之后以++ val递增。

模板:

void iota (ForwardIterator first, ForwardIterator last, T val);

参数:

first, last
Forward iterators to the initial and final positions of the sequence
to be written. The range used is [first, last), which contains all the
elements between first and last, including the element pointed by
first but not the element pointed by last.

val
Initial value for the accumulator. 

返回类型:
None
// CPP program to illustrate 
// std::iota 
#include <iostream> // std::cout 
#include <numeric> // std::iota 
  
// Driver code 
int main() 
{ 
    int numbers[10]; 
    // Initailising starting value as 100 
    int st = 100; 
  
    std::iota(numbers, numbers + 10, st); 
  
    std::cout << "Elements are:"; 
    for (auto i:numbers) 
        std::cout << ' ' << i; 
    std::cout << '\n'; 
  
    return 0; 
}

输出:


Elements are:100 101 102 103 104 105 106 107 108 109

应用:
它可用于生成连续的数字序列。

// CPP program to generate 
// a sequence of numbers using std::iota 
#include <iostream> // std::cout 
#include <numeric> // std::iota 
  
// Driver code 
int main() 
{ 
    int numbers[11]; 
    // Initailising starting value as 10 
    int st = 10; 
  
    std::iota(numbers, numbers + 11, st); 
  
    std::cout << "Elements are:"; 
    for (auto i:numbers) 
        std::cout << ' ' << i; 
    std::cout << '\n'; 
  
    return 0; 
}

输出:

Elements are:10 11 12 13 14 15 16 17 18 19 20


相关用法


注:本文由纯净天空筛选整理自 std::iota in C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。