我是靠谱客的博主 甜美小土豆,最近开发中收集的这篇文章主要介绍STL入门之处理相反数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

STL的基本组件

  • 容器(container)
  • 迭代器(iterator)
  • 函数对象(function object)
  • 算法(algorithms)


在这里使用了  transform 函数实现了相反数的处理

其中:


transform现代码如下:


template <class InputIterator, class OutputIterator, class UnaryFunction>
OutputIterator transform(InputIterator first, InputIterator last, OutputIterator result, UnaryFunction op) {
    for (;first != last; ++first, ++result)
        *result = op(*first);
    return result;
}

transform算法顺序遍历first和last两个迭代器所指向的元素;


将每个元素的值作为函数对象op的参数;


将op的返回值通过迭代器result顺序输出;


遍历完成后result迭代器指向的是输出的最后一个元素的下一个位置,transform会将该迭代器返回



完全体如下:

#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
#include <functional>
using namespace std ;
int main()
{
	const int N = 5;
	vector<int>s(N);
	for(int i  = 0 ; i < N;i++)
	{
		cin>>s[i];
	}
	transform(s.begin(),s.end(),ostream_iterator<int>(cout," "),negate<int>());
	cout<<endl;
	return 0 ;
}





最后

以上就是甜美小土豆为你收集整理的STL入门之处理相反数的全部内容,希望文章能够帮你解决STL入门之处理相反数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(81)

评论列表共有 0 条评论

立即
投稿
返回
顶部