0

Dev を使用して C++ でプロジェクト プログラムを作成する必要があります。私はそれを書き始め、突然私がそれに行き詰まっていることに気付いたとき、それは非常にうまくいきます。質問は:

このプロジェクトの目的は、オブジェクト指向の概念を使用してキャリア センターをサポートする C++ プログラムを開発することです。キャリアセンターには名前があり、顧客は就職を希望する個人の顧客と求人企業の2種類があります。個々の顧客ごとに、顧客 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 クラスの配列型 customers を定義する方法がわかりません。

.cpp ファイルで顧客とジョブの作成、変更、削除を定義する方法がわかりません。ユーザーが 1 を入力すると、プログラムは個人のクラスに、2 は会社のクラスに移動します。

4

1 に答える 1

1

stl コンテナーの 1 つを使用するのが最善の方法です。 std::list は問題ありません: http://www.cplusplus.com/reference/list/list/ std::map のような連想コンテナーを使用して、一意の名前で customer にアクセスできます。

さらに、企業の顧客が何らかの仕事を宣伝したときに、個人の顧客に通知する必要があります(そう推測します)。オブザーバーのデザインパターンはトリックを行います: http://www.oodesign.com/observer-pattern.html

于 2013-05-03T23:51:03.183 に答える