0

我必须使用 Dev 用 C++ 编写一个项目程序。我开始写它,当我突然发现自己陷入其中时,它变得非常随意。问题是:

该项目的目的是开发一个使用面向对象概念支持职业中心的 C++ 程序。职业中心有一个名字,有两种客户,个人客户寻求就业和公司提供工作。对于每个单独的客户,都会存储一个客户 ID、姓名、地址、电话号码和出生日期。每个公司客户都有一个客户 ID、姓名和地址。此外,该公司有一名员工作为职业介绍所的联络点。公司发布的职位空缺包括职位 ID、职位名称、提供的薪水以及员工可以开始工作的日期。公司可以创建、修改和删除工作。职业中心将客户存储在一个数组中,可以创建、修改和删除客户。

.h 文件

 #ifndef CAREER.H
#define CAREER.H

class careercenter
{
    public:
        careercenter(string);
        ~careercenter();
        customers*cu[100];
        int count=0;
        createCustomers();
        modifyCustomers();
        deleteCustomers();
        string getCareerName();
        void setCareerName(string);
        void print();
    private:
        string careername;
};

class customers
{
    public:
        customers(int,string,string);
        ~customers();
        int getCusId();
        string getCusName();
        string getCusAdress();
        void setCusId(int);
        void setCusName(string);
        void setCusAdress(string);
        void print();
    private:
        int CusId;
        string CusName;
        sting CusAdress;
};

class individual : public customers
{
    public:
        individual(int,string,string,int,int);
        ~individual();
        int getIndPhone();
        int getIndDate();
        void setIndPhone(int);
        void setIndDate(int);
        void print();
    private:
        int indPhone;
        int indDate
};


class company : public customers
{
    public:
        company(int,string,string,int,string);
        ~company();
        int getEmpName();
        job jobs[10];
        int count=0;
        createJob();
        modifyJob();
        deleteJob();
        string getEmpAdress();
        void setEmpName(string);
        void setEmpAdress(string);
        void print();
    private:
        string empName;
        string empAdress;
};

class job
{
    public:
        job(int,string,double,int);
        ~job();
        int getJobId();
        sting getJobTitle();
        double getJobSalary();
        int getJobDateStart();
        void setJobId(int);
        void setJobTitle(string);
        void setJobSalary(double);
        void setJobDateStart(int);
        void print();
    private:
        int jobId;
        string jobTitle;
        double jobSalary;
        int jobDateStart;

};


#endif

.cpp 文件

#include<iostream>
using namespace std;
#include"career.h"

//careercenter class

careercenter::careercenter(string CarName)
{
    setCareerName(CarName);
}

careercenter::~careercenter()
{
}

careercenter::createCustomers()
{                               
}

careercenter::modifyCustomers()
{                               
}

careercenter::deleteCustomers()
{                               
}

string careercenter::getCareerName()
{
    return careername;
}

void careercenter::setCareerName(string Carname)
{
    careername=CarName;
}

void careercenter::print()
{
    cout<<careername;
}

//customers class

customers::customers(int CuId , string CuName, string CuAdress)
{
    setCusId(CuId);
    setCusName(CuName);
    setCusAdress(CuAdress);
}

customers::~careercenter()
{
}

int customers::getCusId()
{
    return CusId;
}

string customers::getCusName()
{
    return CusName;
}

string customers::getCusAdress()
{
    return CusAdress;
}

void customers::setCusId(int CuId)
{
    CusId=CuId;
}

void customers::setCusName(string CuName)
{
    CusName=CuName;
}

void customers::setCusAdress(string Carname)
{
    CusAdress=CuAdress;
}

void customers::print()
{
    cout<<CusId<<endl<<CusName<<CusAdress<endl;
}

//individual : public customers

individual::individual(int CuId , string CuName, string CuAdress, int InPhone, int InDate):customers(CuId,CuName,CuAdress),indPhone(InPhone),indDate(InDate)
{
}

individual::~individual()
{
}

int individual::getIndPhone()
{
    return indPhone;
}

int individual::getIndDate()
{
    return indDate;
}

void individual::setIndPhone(int InPhone)
{
    indPhone=InPhone;
}

void individual::setIndDate(int InDate)
{
    indDate=InDate;
}

void individual::print()
{
    point::print();
    cout<<"HI"<<endl;
}

//company : public customers

company::company(int CuId , string CuName, string CuAdress,string EmName, string EmAdress):customers(CuId,CuName,CuAdress),empName(EmName),empAdress(EmAdress)
{
}

company::~company()
{
}

careercenter::createJob()
{                               
}

careercenter::modifyJob()
{                               
}

careercenter::deleteJob()
{                               
}

string company::getEmpName()
{
    return empName;
}

string company::getEmpAdress()
{
    return empAdress;
}

void company::setEmpName(string EmName)
{
    empName=EmName;
}

void company::setEmpAdress(string EmAdress)
{
    empAdress=EmAdress;
}

void company::print()
{
    point::print();
    cout<<"HI"<<endl;
}

//job class

job::job(int JoId,string JoTitle,double JoSalary,int JoDateStart)
{
    setJobId(JoId);
    setJobTitle(JoTitle);
    setJobSalary(JoSalary);
    setJobDateStart(JoDateStart);
}

job::~job()
{
}

int job::getJobId()
{
    return jobId;
}

string job::getJobTitle()
{
    return jobTitle;
}

double job::getJobSalary()
{
    return jobSalary;
}

int job::getJobDateStart()
{
    return jobDateStart;
}

void job::setJobId(int JoId)
{
    jobId=JoId;
}

void job::setJobTitle(string JoTitle)
{
    jobTitle=JoTitle;
}

void job::setJobSalary(double JoSalary)
{
    jobSalary=JoSalary;
}

void job::setJobDateStart(int JoDateStart)
{
    jobDateStart=JoDateStart;
}

void job::print()
{
    cout<<jobId<<endl<<jobTitle<<endl<<jobSalary<<endl<<jobDateStart<<endl;
}

我写了我的 .h 文件和 .cpp 文件,但我不知道如何在 .cpp 文件中的 careercenter 类中定义数组类型的客户。

我不知道如何在 .cpp 文件中定义创建、修改和删除客户和作业。我希望当用户输入 1 时,程序将他带到个人课程,2 到公司课程。

4

1 回答 1

1

最好的办法是使用 stl 容器之一,std::list 就可以了:http ://www.cplusplus.com/reference/list/list/ 。您可以使用 std::map 之类的关联容器通过其唯一名称访问客户。

此外,当公司客户宣传某些工作时,应通知个人客户(所以我想)。观察者设计模式可以解决问题:http ://www.oodesign.com/observer-pattern.html

于 2013-05-03T23:51:03.183 回答