注册 登录
编程论坛 C++教室

请教下面语句是什么含义?

edongliang 发布于 2008-11-24 17:13, 755 次点击
int i, n;
  ifstream infile(filename); //定义ifstream的对象 in ,打开文件filename
  char reco[100];
  
  
  infile >> reco;  // file format recognition读入的内容保存到reco中
  
  infile >> n;   // number of surface elements 读入的内容保存到n中
  cout << n << " Surface elements" << endl;
  
  for (i = 1; i <= n; i++)
    {
    SURFELEMENT sel;
    infile >> sel.snr >> sel.p1 >> sel.p2 >> sel.p3; //不知道什么意思   
      surfelements.Append (sel);//不知道什么意思
    }
其中surfelements的类是
class SURFELEMENT
  {
  public:
  SURFELEMENT () { };
  int snr, p1, p2, p3;
  };这里面也没有定义Append ()
2 回复
#2
edongliang2008-11-24 17:17
红色的语句是我自己添加的
也不知道是否正确请指教?
假如我的filename中是  
  name
 10 2 3 4
 5 6 7 8  
各个变量应该是怎样的?
谢谢!!!
#3
yang_net2008-11-25 12:45
int i, n;
  ifstream infile(filename);
  char reco[100];
  
  
  infile >> reco;  //应该是记录的名字等标志吧
  
  infile >> n;   // 文件中包含SURFELEMENT对象的个数
  cout << n << " Surface elements" << endl;
  
  for (i = 1; i <= n; i++)
    {
    SURFELEMENT sel;
    infile >> sel.snr >> sel.p1 >> sel.p2 >> sel.p3; //读取SURFELEMENT中的字段   
      surfelements.Append (sel);//这就是将取得的对象添加到结果集合
                                //surfelements应该是list<SURFELEMENT>类型的
                                //Append是list的函数
    }

文件的内容应该是这样的:
Records
3
1 2 3
4 5 6
7 8 9
1