SGI

填充

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

原型

template <class ForwardIterator, class T>
void fill(ForwardIterator first, ForwardIterator last, const T& value); 

描述

填充将值分配给范围中的每个元素[first, last). 也就是说,对于每个迭代器i[first, last)中,它执行赋值*i = value.

定义

定义在标准头文件 algorithm 中,以及非标准向后兼容头文件 algo.h 中。

类型要求

先决条件

复杂度

线性。填充执行last - first次赋值。

示例

vector<double> V(4);
fill(V.begin(), V.end(), 137);
assert(V[0] == 137 && V[1] == 137 && V[2] == 137 && V[3] == 137);

注意

[1] 的原因是填充要求其参数是可变的 正向迭代器,而不是仅仅是 输出迭代器,是因为它使用了一个迭代器范围[first, last)。没有合理的方式来描述 输出迭代器 的范围,因为不可能比较两个 输出迭代器 的相等性。该fill_n算法确实有一个允许使用 输出迭代器 的接口。

另请参阅

复制, fill_n, 生成, 生成_n, iota
[Silicon Surf] [STL Home]
版权所有 © 1999 Silicon Graphics, Inc. 保留所有权利。 商标信息