C++ : how can I define an array type customers in a class name careercenter then define create, 修改删除.cpp文件

标签 c++

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

这个项目的目的是开发一个 C++ 程序,支持使用面向对象的职业中心 概念。就业中心有名字,有两种客户,个人 求职的客户和提供工作的公司。对于每个单独的客户 存储客户 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 时,程序将他带到个人类(class),然后将 2 带到公司类(class)。

最佳答案

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

此外,当公司客户为某项工作做广告时,应通知个人客户(我推测如此)。观察者设计模式可以解决问题:http://www.oodesign.com/observer-pattern.html

关于C++ : how can I define an array type customers in a class name careercenter then define create, 修改删除.cpp文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16368837/

相关文章:

c++ - 即使根据容量()仍有未使用的空间,std::vector 能否将其数据移动到 emplace_back()处的另一个地址?

c++ - 嵌入式 Python 2.7.2 从用户定义的目录导入模块

c++ - 如何在 libcurl 中使用成员函数指针

c++ - 使用ffmpeg example remuxing.c 录制rtmp 直播流到mp4 文件,它添加一个空的elst 框,如何禁止它?

c++ - 这个占位符生成器如何工作?

c++ - (1<<32) 和 (1<<i) 之间的差异,其中 i == 32

C++结构题

c++ - Qt 将给定的键发送到事件应用程序

c++ - 平均点c++周围点数组的均匀缩放

c++ - 从矩形列表创建树