21xrx.com
2025-04-17 23:00:34 Thursday
文章检索 我的文章 写文章
C++ 中的 fill 函数是什么?
2023-07-09 20:42:21 深夜i     27     0
C++ fill函数 功能描述

C++中的fill函数是一个STL算法,用于填充容器的值。

这个函数有两个形式:

1. fill(Start, End, value) 这个函数将从Start到End之间的所有元素都设置为 value

2. fill_n(Start, count, value) 这个函数将从Start起计数个数为count的元素都设置为value

在这两种情况下,类型value必须与容器元素类型相同。对于数值类型,fill函数可以用来填充任意常数,而对于string 和vector,可以使用字符或对象来初始化。

下面是 fill函数的基本使用示例:

#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
int main() {
  vector<int> numbers(10);
  fill(numbers.begin(), numbers.end(), 5); // 所有元素都被设置为5
  cout << "Filled with 5 : ";
  for (auto it = numbers.begin(); it != numbers.end(); ++it) {
   cout << *it << " ";
  }
  return 0;
}

输出如下:

Filled with 5 : 5 5 5 5 5 5 5 5 5 5

对于fill_n函数,使用如下示例:

int main() {
  vector<int> numbers(10);
  fill_n(numbers.begin(), 5, 8); // 设置前5个元素为8
  cout << "Filled with 8 : ";
  for (auto it = numbers.begin(); it != numbers.end(); ++it) {
   cout << *it << " ";
  }
  return 0;
}

输出如下:

Filled with 8 : 8 8 8 8 8 0 0 0 0 0

在上述示例中,fill_n函数将前5个元素设置为8,而其他元素保持不变。

总的来说,fill函数是一种更快,更简单的方式来初始化容器的元素。其强大的功能使得它成为C++ STL算法的重要组成部分。

  
  

评论区

请求出错了