头文件,某头文件中含另一头文件,不叫继承。
类继承,不等于头文件已 包含(或你说的继承)那个类有关的头文件。
头文件fstream 里没有包含iostream,而cerr、cout 在iostream头文件中。所以要加iostream。
iostream中才包含例如CERR,COUT,CIN这一类标准输入输出流操作符的定义,继承并不是所有的东西都能继承的,要明白这点
//具体错误在程序中,顺便帮你改进了程序
#include
#include
#include
struct Person
{
char name[10];
double height;
unsigned age;
};
Person people[4]=,,,};
Person peopl[4];//新建一个person用来测试infile是否成功
void main()
{
fstream outfile;
fstream infile;
outfile.open("d:\\f1.dat",ios::out|ios::binary); //ios::out不是ios::in
if(!outfile)
{ cout<<"No such file!"<
}
for(int i=0;i<4;i++)
outfile.write((char*)&people[i],sizeof(people[i]));
outfile.close();
infile.open("d:\\f1.dat",ios::in|ios::binary);//文件名地址要写全
if(!infile)
{
cout<<"No such file!"<
}
for(int j=0;j<4;j++)
{
infile.read((char*)&peopl[j],sizeof(peopl[j]));//用测试数组接受数据
cout<
infile.close();
}