C++代码出现 fatal error C1004: unexpected end of file found 请帮帮忙查找错误原因

#include<iostream>#include<string>#include<fstream>usingnamespacestd;classemployee{pu... #include<iostream>
#include <string>
#include<fstream>
using namespace std;
class employee
{
public:
int Num;
string Name;
int Age;
double Salary;
employee(){}
employee(int num, string name,int age,double salary):
Num(num),Name(name),Age(age),Salary(salary){}
void savetofile(employee e[5])
{
int employee[5];
int nums;
nums=0;
ifstream in;
in open ("file.txt",ios::in);
while(!in.eof()))
{in>>>employee[nums].Num>>employee[nums].Name>>employee[nums].Age>>employee[nums].Salary
nums++;

}
in.close();
void outformfile()
{
ofstream out;
out.open("file.txt",ios::out);
for(int i=0;i<nums;i++)
{
out<<endl<<employee[nums].Num
<<" "<<employee[nums].Name
<<" "<<employee[nums].Age
<<" "<<employee[nums].Salary;
}
out.close();

}
void inserfile()
{
employee e;
cin>>e.Num>>e. Name>>e.Age>>e.Salary;
employee [nums++]=e;
}
void findfile()
{
for(int i=0;i<7;i++)
{
if(employee[i].Num==6)
cout<< employee[nums].Num
<<" "<<employee[nums].Name
<<" "<<employee[nums].Age
<<" "<<employee[nums].Salary;y;
else cout<<"无此人"<<endl;
}

}
};
int main()
{
savetofile();
outfromfile();
inserfile();
findfile();
findfile();
return 0;
}
展开
 我来答
酷管家C350d
2013-05-18 · TA获得超过389个赞
知道小有建树答主
回答量:419
采纳率:0%
帮助的人:271万
展开全部
#include<iostream>
#include <string>
#include<fstream>
using namespace std;
class employee{
public:
    int Num;
    string Name;
    int Age;
    double Salary;
    employee(){}
    employee(int num, string name,int age,double salary):Num(num),Name(name),Age(age),Salary(salary){}
    void savetofile(employee e[5]){
        int employee[5];
        int nums;
        nums=0;
        ifstream in;
        in open ("file.txt",ios::in);
        while(!in.eof())){
          in>>>employee[nums].Num>>employee[nums].Name>>employee[nums].Age>>employee[nums].Salary;
            nums++;
        }
        in.close();
    }
    void outformfile(){
        ofstream out;
        out.open("file.txt",ios::out);
        for(int i=0;i<nums;i++){
            out<<endl<<employee[nums].Num
                <<" "<<employee[nums].Name
                <<" "<<employee[nums].Age
                <<" "<<employee[nums].Salary;
        }
        out.close();
    }
    void inserfile(){
        employee e;
        cin>>e.Num>>e. Name>>e.Age>>e.Salary;
        employee [nums++]=e;
    }
    void findfile(){
        for(int i=0;i<7;i++){
            if(employee[i].Num==6)
                cout<<  employee[nums].Num
                    <<" "<<employee[nums].Name
                    <<" "<<employee[nums].Age
                    <<" "<<employee[nums].Salary;y;
            else cout<<"无此人"<<endl;
        }
    }
};
int main(){
    employee a;
    a.savetofile();
    a.outfromfile();
    a.inserfile();
    a.findfile();
    a.findfile();
    return 0;
}

我表示你短了一些分号和大括号……

给你程序排了一下版……其他自己看吧……

而且类不生成对象是无法直接使用成员函数的……(用静态成员函数又实现不了功能……)

李磊_1
2013-05-18 · TA获得超过299个赞
知道小有建树答主
回答量:337
采纳率:66%
帮助的人:121万
展开全部
看了一下,发现你的语义都没有搞清楚,比如savetofile方法,参数e从来没有使用过,为什么要添加这么个参数?在方法体内定义了一个int类型的数组,没有初始化,你写出来有什么意义?而且你又要取数组元素的成员如Num,整形有成员吗?在方法outformfile中,nums变量从哪里来?employee数组从哪里来?剩下的就不多说了,这些都是你的语义和语法错误,先整理一下吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wanglixin1001
2013-05-18 · TA获得超过4174个赞
知道大有可为答主
回答量:1758
采纳率:80%
帮助的人:895万
展开全部
应该是在
in.close();
void outformfile()
这里。in.colse()后面加上}来结束该函数的定义。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JimmerORM
2013-05-18 · TA获得超过276个赞
知道小有建树答主
回答量:243
采纳率:0%
帮助的人:79.3万
展开全部

你好,要解决此问题,请加入头文件stdafx.h,或者在设置,预编译的头文件,不使用预编译的头文件即可

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱逛的江
2013-05-18
知道答主
回答量:43
采纳率:100%
帮助的人:25.5万
展开全部
感觉都有很大问题:
main函数里能直接调用类成员函数吗,都没对类进行实例化
追问
你的意思是要把那些函数写在类外吗,我的main函数没有问题
追答
肯定要实例化才用用啦,像“离世杀手|五级”回答的那样。
然后savetofile函数里的变量intemployee[5];与类名重复,while(!in.eof()))多了一个右括号
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式