21xrx.com
2025-04-22 08:19:28 Tuesday
文章检索 我的文章 写文章
C++的fill函数怎么使用?
2023-06-23 09:50:34 深夜i     21     0
C++ fill函数 使用

C++中的fill函数是一种很有用的方法,能够用来设置数组或容器中范围内的元素都为特定的值。该函数位于algorithm标准头文件中,其声明方式为:

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

其中,first和last是范围的起始和结束迭代器,value是要对范围中每个元素赋的值。

下面我们来看一些例子,加深理解fill函数的使用:

1. 对数组进行赋值

int arr[5];
fill(arr, arr+5, 0); //将arr数组中的元素都赋为0

2. 对容器进行赋值

vector<int> v 4;
fill(v.begin()+2, v.end()-1, -1);  //将v容器中第3个到倒数第2个元素都赋为-1

3. 对二维向量进行赋值

vector<vector<int>> vec{1, 4, 8};
fill(vec[0].begin(), vec[0].end(), -1);  //将vec向量中第1行元素都赋为-1

需要注意,fill函数并不检测end是否在begin之前。因此,在使用fill前,应该确保迭代器的有效性,并确定填充范围的正确性。

对于需要条件地填充某些元素的情况,可以使用std::fill_if函数。这个函数的使用和fill类似,只不过需要传入一个谓词函数,用来指定哪些元素需要赋值。 例如:

vector<int> v4;
fill_if(v.begin(), v.end(), [](int i) return i % 2 == 0; , -1);  //将v容器中偶数元素都赋为-1

总之,fill函数是非常简单易用的函数,可以方便地为数组或容器的某一范围内的元素赋值,提高了编程效率和代码可读性。

  
  

评论区

    相似文章
请求出错了