如何将vector中的数据写入到txt中

1,若vector中的元素类型不是stl中的类,即为vector vec, T 是自定义类型,那么可以在T类结构中重载运算符<<。

例如:

#include"iostream"
#include
#include"fstream"
#include"ostream"
using  namespace  std;
class  person
{
public :
     person( char  *, char *);
     friend  ostream & operator<<(ostream &os,person &p)//友元函数定义在person类中,可以操作person中的成员。
     {
         os << .Id << p.Name;
        return  os;
     }
private
    char Id [10];
    char  Name[10];
};
inline  person::person( char  *name,  char  *id)
{
  strcpy (Id, id);
  strcpy (Name, name);
}
int  main()
{
  fstream file;
  person *temp;
  int  i;
  file.open( "result.txt" ,ios_base::out);
  vectorstu;
  for  (i = 0; i < 3; i++)
  {
   char   name[10], id[10];
   cin >> name >> id;
   temp =  new  person(name, id);
   stu.push_back(*temp);
  }
  for  (i = 0; i 
  {
  
   fp << stu[i];
  }
  fp.close();
  system ( "pause" );
  return  0;
}
2,若vector中元素为基本数据类型,比如int,则先把vector中的元素转换成一个string,再整行输出。

你可能感兴趣的:(c++)