C++ fill()函数解析

2024-03-19 06:38
文章标签 c++ 函数 解析 fill

本文主要是介绍C++ fill()函数解析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

C++ fill()函数解析

函数原型

void fill (ForwardIterator first, ForwardIterator last, const T& val);

  • Fill range with value;
  • Assigns val to all the elements in the range [first,last).
    即:按照单元赋值,将一个区间的元素都赋同一个值

函数使用

fill()函数使用时,需要包含头文件.

  1. 例如,使用fill() t填充 数组,fill(array, array+n, value).
    新建fill_array_test.cpp
$ touch fill_array_test.cpp
$ gedit fill_array_test.cpp

编辑文件,内容如下:

#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;
int main() {int array[20];//全部填充1fill(array, array + 20, 1);cout <<"全部填充1"<<endl;for(int item = 0; item < sizeof(array)/sizeof(int);item++)cout << array[item]<<"";cout <<endl<<"前10个元素填充2"<<endl;    //前10个元素填充2fill(array, array + 10, 2);for(int item = 0; item < sizeof(array)/sizeof(int);item++)cout << array[item]<<"";  cout <<endl;return 0;
}

编译执行

$ g++ fill_array_test.cpp -o fill_array_test.out
$ ./fill_array_test.out

运行结果:

全部填充1
11111111111111111111
前10个元素填充2
22222222221111111111
  1. 例如,使用fill() t填充vector类型变量,fill(vector.start(), vector.end(), value).
    新建fill_vector_test.cpp
$ touch fill_vector_test.cpp
$ gedit fill_vector_test.cpp

编辑fill_vector_test.cpp

#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main() {vector<int> v{1,1,1,1,1,1,1,1,1,1,1,1,1};cout<<endl;for(int item =0; item<v.size(); item++)cout<<v[item]<<" " ;cout<<endl;fill(v.begin(), v.end(), 2);cout<<endl;for(int item =0; item<v.size(); item++)cout<<v[item]<<" " ;cout<<endl;return 0;
} 

编译执行:

$ g++ fill_vector_test.cpp -o fill_vector_test.out
$ ./fill_vector_test.out

运行结果如下:

1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 

这篇关于C++ fill()函数解析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/825108

相关文章

c++ 类成员变量默认初始值的实现

《c++类成员变量默认初始值的实现》本文主要介绍了c++类成员变量默认初始值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录C++类成员变量初始化c++类的变量的初始化在C++中,如果使用类成员变量时未给定其初始值,那么它将被

C++中NULL与nullptr的区别小结

《C++中NULL与nullptr的区别小结》本文介绍了C++编程中NULL与nullptr的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编... 目录C++98空值——NULLC++11空值——nullptr区别对比示例 C++98空值——NUL

C++ Log4cpp跨平台日志库的使用小结

《C++Log4cpp跨平台日志库的使用小结》Log4cpp是c++类库,本文详细介绍了C++日志库log4cpp的使用方法,及设置日志输出格式和优先级,具有一定的参考价值,感兴趣的可以了解一下... 目录一、介绍1. log4cpp的日志方式2.设置日志输出的格式3. 设置日志的输出优先级二、Window

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

深度解析Java DTO(最新推荐)

《深度解析JavaDTO(最新推荐)》DTO(DataTransferObject)是一种用于在不同层(如Controller层、Service层)之间传输数据的对象设计模式,其核心目的是封装数据,... 目录一、什么是DTO?DTO的核心特点:二、为什么需要DTO?(对比Entity)三、实际应用场景解析

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

Java中的雪花算法Snowflake解析与实践技巧

《Java中的雪花算法Snowflake解析与实践技巧》本文解析了雪花算法的原理、Java实现及生产实践,涵盖ID结构、位运算技巧、时钟回拨处理、WorkerId分配等关键点,并探讨了百度UidGen... 目录一、雪花算法核心原理1.1 算法起源1.2 ID结构详解1.3 核心特性二、Java实现解析2.