概述
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入门之处理相反数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复