SGI

iota

类别: 算法 组件类型: 函数

原型

template <class ForwardIterator, class T>
void iota(ForwardIterator first, ForwardIterator last, T value);

描述

Iota将连续递增的值赋给一个范围。也就是说,它将赋给*first, value + 1赋给*(first + 1)等等。一般来说,范围内的每个迭代器i在范围[first, last)被赋值value + (i - first). [1]

定义

在标准头文件 numeric 和非标准向后兼容头文件 algo.h 中定义。此函数是 SGI 扩展;它不是 C++ 标准的一部分。

类型要求

先决条件

复杂度

线性。正好last - first个赋值。

示例

int main()
{
  vector<int> V(10);

  iota(V.begin(), V.end(), 7);
  copy(V.begin(), V.end(), ostream_iterator<int>(cout, " "));
  cout << endl; 
}

备注

[1] 名称iota取自编程语言 APL。

另请参阅

fill, generate, partial_sum
[Silicon Surf] [STL Home]
版权所有 © 1999 Silicon Graphics, Inc. 保留所有权利。 商标信息