0
点赞
收藏
分享

微信扫一扫

C++ --STL常用算法(二)之累加和填充

晚安大世界 2022-04-19 阅读 60

文章目录

累加和填充

  • accumulate
  • fill
    必须包含头文件 numeric

一、accumulate

  • 实现类加的功能
算术生成算法:头文件<numeric>
accumulate, fill
//accumulate:累加
#include <numeric>
#include <vector>
void test()
{
	vector<int> v;
	for (int i = 1; i < 100; i++)
	{
		v.push_back(i);
	}
	//计算v中所有元素的和
	int result = accumulate(v.begin(), v.end(), 0);				//0是初始的累加值
	cout << result << endl;
}
int main()
{
	test();
	return 0;
}

二、fill

  • 将指定范围的元素全部填充为指定元素
//fill:填充值
#include <numeric>
#include <vector>
#include <algorithm>
class MyPrint
{
public:
	void operator()(int val)
	{
		cout << val << " ";
	}
};
void test()
{
	vector<int> v;
	v.resize(10);			//resize,默认填充数值0
	fill(v.begin(), v.end(), 100);
	for_each(v.begin(), v.end(), MyPrint());
	cout << endl;
}
int main()
{
	test();
	return 0;
}
举报

相关推荐

0 条评论