为什么不读取以前的条目?

时间:2016-04-04 02:00:38

标签: c++

好的,我正在创建一个银行管理系统 我的问题是该程序似乎没有读取我之前输入的条目

来自main.cpp

void new_account()
{
    class account arcade;
    ofstream outfile;
    outfile.open("account.txt",ios::app|ios::binary);
    arcade.create_account();
    outfile.write((char *)(&arcade), sizeof(account) );
    outfile.close();

}

void display_account(int acc_no)
{

    account arcade;
    ifstream infile;
     infile.open("account.txt",ios::binary);
     while(infile.read((char *)(&arcade), sizeof(account) ));
     {
         if(arcade.getaccount_no() == acc_no)
         {
            arcade.show_account();
         }
     }
     infile.close();
}

来自account.cpp文件

void account::create_account()
{

    cout << "1.Enter account no" << endl;
    cin >>  account_no;
    cout << "2.Enter username" << endl;
    cin.ignore();
    cin.getline(name,50,'\n');
    cout << "Enter initial deposit" << endl;
    cin >> deposit;
    cout << "Your account has been created" << endl;
    getch();
}

void account::show_account()
{
    cout <<"Account No. :"<<account_no <<endl;
    cout <<"Account User Name: "  << name << endl;
    cout <<"Balance Amount" <<deposit << endl;


}

如果我要填一个新条目。然后在尝试显示新条目后,它将显示该条目。但是,我存储的任何先前条目都无法访问。

1 个答案:

答案 0 :(得分:0)

据我所知,你所分享的是你没有一个阵列设置来处理多个人/数字/信息。它看起来像是:

gin.getline(name[I],50,'\n');

这会将每个条目存储在内存中的不同位置,而无需每次都单独创建新变量。