标签:++ tran 双端队列 结构体 blog 调用 文件 container multiple
STL的基本组件---函数对象(function object)
STL的基本组件---算法(algorithm)
#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]; } /* 算法:取相反数后输出;ostream_iterator<int>(cout, " "):输出流迭代器 negate<int>() 取相反数的函数; transform算法的一种实现: transform算法顺序遍历first和last两个迭代器所指向的元素; 将每个元素的值作为函数对象op的参数; 将op的返回值通过迭代器result顺序输出; 遍历完成后result迭代器指向的是输出的最后一个元素的下一个位置,transform会将该迭代器返回; template <class InputIterator, class OutputIterator, class UnaryFunction> OutputIterator transform(InputIterator first, InputIterator last, OutputItertor result,UnaryFunction op) { for(;first!=last;++first,++result) *result = op(*first); return result; } */ transform(s.begin(), s.end(), ostream_iterator<int>(cout, " "), negate<int>()); cout << endl; return 0; }
标签:++ tran 双端队列 结构体 blog 调用 文件 container multiple
原文地址:http://www.cnblogs.com/hujianglang/p/6535744.html