首页 > 编程语言 > 详细

c++ 使用算法时确保目标区间足够大

时间:2015-08-10 21:59:59      阅读:219      评论:0      收藏:0      [点我收藏+]
/*************************************************************************
 *
 *   无论何时,如果使用的算法需要指定一个目标区间,要么必须确保区间足够大
 *   要么确保它会随着算法的运行而增大。
 *   要在算法执行过程中增大目标区间,请使用插入型的迭代器,如ostream_stream,
 *   back_inserter,front_inserter,inserter 返回的迭代器。
 *
 ************************************************************************/

#include<iostream>
#include<vector>
#include<algorithm>  //for_each,transform
#include<iterator>   //istream_iterator,back_inserter
using namespace std;

int opIncrement(int val){ return ++val;}

int main()
{

    vector<int> iVecValues(10,1); //10个1
    vector<int> iVecResult;
    
    cout<<&(*iVecResult.end())<<","<<iVecResult.size()<<endl;
    transform(iVecValues.begin(),iVecValues.end(),
            back_inserter(iVecResult),opIncrement);  //插入型迭代器

    for_each(iVecResult.begin(),iVecResult.end(),
            [](int i){cout << i << ",";});
    cout << endl;

    cout<<&(*iVecResult.end())<<","<< iVecResult.size()<<endl;

    return 0; 
}

 

c++ 使用算法时确保目标区间足够大

原文:http://www.cnblogs.com/wxquare/p/4719228.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!