码迷,mamicode.com
首页 > 其他好文 > 详细

std::copy ( myvector.begin(), myvector.end(), out_it )

时间:2015-01-04 12:06:24      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:

在实际生产环境中,不能进行调试,所以程序通常需要编译一个DEBUG版本来辅助我们找出问题所在,编译这样的DEBUG版本最常用的手段就是在关键处输出我们关心一些变量的值到屏幕。

如果输出的简单的变量值,那么直接输出即可,但如果是向量或者队列等容器,那么就没办法直接输出了,而且写循环遍历也很麻烦,可以使用下面这个函数std::copy()

template <class InputIterator, class OutputIterator>
  OutputIterator copy (InputIterator first, InputIterator last, OutputIterator result);

在实际使用时我们可以这样写代码:

#ifdef DEBUG
            cout << "File sum :" << vecFiles.size() << endl;
            copy(vecFiles.begin(), vecFiles.end(), ostream_iterator<string>(cout, "\n"));
#endif

注意:

copy函数定义在<algorithm>头文件中,所以使用时需要包含该头文件

ostream_iterator定义在<iterator>头文件中,所以使用这个函数时需要包含该头文件

std::copy ( myvector.begin(), myvector.end(), out_it )

标签:

原文地址:http://www.cnblogs.com/lit10050528/p/4200590.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!