在招聘网站做电话销售怎么样,销售机械设备做网站,网站建设公司问答营销案例,名片网页设计代码文章目录 一、元素累加算法 - accumulate 函数1、函数原型分析2、代码示例 二、元素填充算法 - fill 函数1、函数原型分析2、代码示例 一、元素累加算法 - accumulate 函数 1、函数原型分析 在 C 语言 的 标准模板库 ( STL , STL Standard Template Library ) 中 , 提供了 accu… 文章目录 一、元素累加算法 - accumulate 函数1、函数原型分析2、代码示例 二、元素填充算法 - fill 函数1、函数原型分析2、代码示例 一、元素累加算法 - accumulate 函数 1、函数原型分析 在 C 语言 的 标准模板库 ( STL , STL Standard Template Library ) 中 , 提供了 accumulate 元素累加算法函数 用于 将 一个容器中的元素 进行累加操作 ; accumulate 元素累加函数 将 输入容器 的 [ 起始迭代器, 终止迭代器 ) 范围 内的 元素 在一个基础值 的 基础上 进行累加 , 得到一个累加值 ;
最终 accumulate 函数 返回最终累加后的值 ; accumulate 元素累加算法 函数原型 如下 :
template class InputIterator, class T
T accumulate(InputIterator first, InputIterator last, T init); 参数解析 : InputIterator first 参数 : 输入容器 ( 被复制容器 ) 的 迭代器范围 的 起始迭代器 ( 包含该迭代器指向的元素 ) ;InputIterator last 参数 : 输入容器 ( 被复制容器 ) 的 迭代器范围 的 终止迭代器 ( 不包含该迭代器指向的元素 ) ;T init 参数 : 累加的初始值 , 该值与 容器中的元素类型一致 ; 返回值解析 : T 类型 是 容器元素类型 , 返回的是最终的累加值 ; 代码示例 : // 输入容器vectorint source{ 9, 5, 2, 7 };// 将容器中的值累加int acc accumulate(source.begin(), source.end(), 0);2、代码示例 代码示例 :
#include iostream
using namespace std;
#include vector
#include algorithm
#include functional// accumulate 函数定义在这个头文件中
#include numericint main() {// 输入容器vectorint source{ 9, 5, 2, 7 };// 将容器中的值累加int acc accumulate(source.begin(), source.end(), 0);// 遍历打印容器中元素内容for_each(source.begin(), source.end(), [](int a) {cout a ;});cout endl;cout acc acc endl;// 控制台暂停 , 按任意键继续向后执行system(pause);return 0;
};执行结果 :
9 5 2 7 acc 23 请按任意键继续. . . 二、元素填充算法 - fill 函数 1、函数原型分析 在 C 语言 的 标准模板库 ( STL , STL Standard Template Library ) 中 , 提供了 fill 元素填充算法函数 用于 将 一个容器中的 指定范围的元素 修改为指定值 ; fill 元素填充函数 将 输入容器 的 [ 起始迭代器, 终止迭代器 ) 范围 内的 元素 修改为指定值 ; fill 元素填充算法 函数原型 如下 :
template class ForwardIterator, class T
void fill(ForwardIterator first, ForwardIterator last, const T value);参数解析 : ForwardIterator first 参数 : 输入容器 ( 被复制容器 ) 的 迭代器范围 的 起始迭代器 ( 包含该迭代器指向的元素 ) ;ForwardIterator last 参数 : 输入容器 ( 被复制容器 ) 的 迭代器范围 的 终止迭代器 ( 不包含该迭代器指向的元素 ) ;const T value 参数 : 要求改的值 返回值解析 : void 类型返回值 ; 代码示例 : // 输入容器vectorint source{ 9, 5, 2, 7 };// 将容器中的值都填充为 888fill(source.begin(), source.end(), 888);2、代码示例 代码示例 :
#include iostream
using namespace std;
#include vector
#include algorithm
#include functional// accumulate 函数定义在这个头文件中
#include numericint main() {// 输入容器vectorint source{ 9, 5, 2, 7 };// 遍历打印容器中元素内容for_each(source.begin(), source.end(), [](int a) {cout a ;});cout endl;// 将容器中的值都填充为 888fill(source.begin(), source.end(), 888);// 遍历打印容器中元素内容for_each(source.begin(), source.end(), [](int a) {cout a ;});cout endl;// 控制台暂停 , 按任意键继续向后执行system(pause);return 0;
};执行结果 :
9 5 2 7 888 888 888 888 请按任意键继续. . .