利用copy函数简单快速输出/保存vector向量容器中的数据

如果要输出vector中的数据我们可以通过循环语句输出,更加简便的方法是利用copy函数直接输出,例子:

#include "stdafx.h"

#include <iostream>

#include <vector>

#include <algorithm>

using namespace std;

int_tmain(int argc, _TCHAR* argv[])

{

    //利用copy函数快速输出向量容器中的数据

    vector<int> v;

    int n=5;

    cout<<"请输入"<<n<<"个整数"<<endl;

    int i=0;

    int nValue;

    while(i<n)

    {

       cin>>nValue;

       v.push_back(nValue);

       ++i;

    }

    //输出

    cout<<"向量容器中的数据为:"<<endl;

    copy(v.begin(),v.end(),ostream_iterator<int>(cout,"\n"));

    return 0;

}

   ostream_iterator是流迭代器.

   利用copy函数不仅可以将vector容器中的数据直接输出到屏幕,而且还可以直接输出到文件:

在上例中添加头文件#include <fstream>

在return 0;语句前面添加如下代码:

ofstream outFile;

outFile.open("test.txt",ios::out);

copy(v.begin(),v.end(),ostream_iterator<int>(outFile,"\n"));

outFile.close();

   数据就会保存到test.txt文件中。

posted on 2013-09-16 19:52  新一  阅读(639)  评论(0)    收藏  举报

导航