如何在另一类中使用结构

How to make use of structure in another class?

本文关键字:一类 结构      更新时间:2023-10-16

好吧,你好,我当前的作业有问题

我有2堂课,即员工班和一个GM班。

在员工类中,我使用了一个结构,即

struct eInfo
{
    char username [80];
    char password [80];
    int eid;
};    

但是,在我的通用汽车类中,我的功能依赖于员工类中的结构。例如,

void addEmployee(fstream&, int, eInfo&);
void delEmployee(fstream&, int, eInfo&);
void editEmployee(fstream&, int, eInfo&);

我应该如何使用它?

我尝试过的是重新支配

struct eInfo
{
    char username [80];
    char password [80];
    int eid;
};

在GM课内。但这效果不佳。没有语法错误,但是当我使用

fstream afile;afile.open(" employeeInfo.dat",ios :: in | ios :: out | out | ios :: binary);

文件本身要空了。

任何想法如何修复?

如果在 employe中声明 struct eInfo,则当您在employe外面时,您应将其称为employe::eInfo。如果您在gm中重新列出它,则编译器将考虑employe::eInfogm::eInfo是两个不同的类。

在适当的标头文件中声明einfo,然后将该标头文件包含在GM类中。要创建结构,请使用此语法。变量名称只是您创建结构时碰巧使用的任何内容的填充物。

eInfo myStruct = {theUsername, thePassword, theEid};