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

新手求助。。关于容器类的问题。

广夜 发布于 2008-01-06 15:44, 792 次点击
我在做一个GradeBook的时候用这样一句

GradeBook *studentData = new GradeBook [1000];  //GradeBook是一个容器类用于储存学生的数据

void GradeBook::input()
{
    GradeBook s;
    string fname;
    string lname;
    long tid;
    int tage;
    string tsex;
    string taddress;
    string tphone;

    ofstream savefile("GradeBook.txt",ios::app);
    cout<<"Please enter the first name,the last name ,ID , age , sex , address , phone number:"<<endl;
         cin>>fname>>lname>>tid>>tage>>tsex>>taddress>>tphone;
    savefile<<fname<<' '<<lname<<' '<<tid<<' '<<tage<<' '<<tsex<<' '<<taddress<<' '<<tphone<<endl;
    
    {
        studentData[i].setFirstName(fname);
        studentData[i].setId(tid);
        studentData[i].setAge(tage);    
        studentData[i].setSex(tsex);    
        studentData[i].setAddress(taddress);    
        studentData[i].setPhone(tphone);
        i++;      //i是GradeBook 继承下来的一个protected的static型的数据成员
    }

    cout<<"Information has been record."<<endl;
    savefile.close();
}           //运行到程序会正常结束。但实际上这个仅仅是个功能块,不应该结束整个程序
              //只要不动态分配容器类的内存空间就可以正常运行了。  高手可以告诉我怎么回事吗??
1 回复
#2
中学者2008-01-06 16:19
你的代码是不是有问题啊!
GradeBook s ;  //干嘛滴?
   {
        studentData[i].setFirstName(fname);
        studentData[i].setId(tid);
        studentData[i].setAge(tage);   
        studentData[i].setSex(tsex);   
        studentData[i].setAddress(taddress);   
        studentData[i].setPhone(tphone);
        i++;      //i是GradeBook 继承下来的一个protected的static型的数据成员
    }    //这个局部域是不是有问题滴?
1