我正在尝试制作一个程序来存储员工数据库并将它们存储在外部文件中。从 .dat 文件中读取向量并将其加载到程序中的函数会读取该文件,但每当我尝试显示或修改加载的向量时,程序就会崩溃。
//displays vector
void Database:: displayAll() const
{
for(std::vector<Employee>::const_iterator iter = mEmployees.begin(); iter != mEmployees.end(); ++iter)
{
iter -> display();
}
}
std::vector<Employee> mEmployees;
void Database::readData()
{
ifstream empIn("employee.dat" , ios::binary);
empIn.seekg(0,ifstream::end);
long size2 = empIn.tellg();
empIn.seekg(0,ifstream::beg);
mEmployees.resize(size2);
empIn.read((char*)&mEmployees, size2);
empIn.close();
cout << mEmployees.size() << endl; //this tests whether or not it reads.
}