小编Nag*_*lum的帖子

将istream传递给函数

我正在制作一个类似于口袋妖怪的游戏类型的程序.我们有一个锦标赛课程,跟踪几个团队(它自己的类),其中包括宠物(它自己的类),不同种类的宠物是CPet的子类.

我们正在尝试将文件名传递给main,从主传递该文件名到Tournament类.在Tournament类中,我们打开文件:

 14 //Construct a tournament
 15 CTournament::CTournament(const char *Filename){
 16         //opening file
 17         ifstream inFile(Filename, ios::in);
 18         if(inFile.bad()){
 19                 cout << "File error" << endl;
 20                 return ;
 21         }
 22          //get Teamlist for tournament
 23          while(!(inFile.eof())){
 24                  CTeam* temp = new CTeam;
 25                  temp->ParseTeam(inFile);
 26 
 27                  TeamList.push_back(temp);
 28          }
 29 }
Run Code Online (Sandbox Code Playgroud)

在这里,我们将文件传递给CTeam.ParseTeam,它看起来像:

     30 void CTeam::ParseTeam(std::istream in){
     31   string readline;
     32   getline(in, readline);
     33   this->TeamName = readline;
     34   while(!(in.eof())&&(readline != " " || readline != "/n"))
     35   {
     36 …
Run Code Online (Sandbox Code Playgroud)

c++ istream ifstream

3
推荐指数
1
解决办法
8597
查看次数

标签 统计

c++ ×1

ifstream ×1

istream ×1