欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++實現(xiàn)職工管理系統(tǒng)

 更新時間:2021年05月26日 15:18:34   作者:培培不是我小寶貝  
這篇文章主要為大家詳細(xì)介紹了C++實現(xiàn)職工管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C++實現(xiàn)職工管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

workermanager.h

#pragma once//防止頭文件重復(fù)包含
#include <iostream>
#include "worker.h"
using namespace std;
#include "boss.h"
#include "employee.h"
#include "manager.h"

#include <fstream>
#define FILENAME "empFile.txt"

class WorkerManager
{
public:
 WorkerManager();

 void Show_Menu();//菜單功能

 void ExitSystem();//退出功能

 int m_EmpNum;//記錄職工人數(shù)

 Worker ** m_EmpArray;//職工數(shù)組指針

 void Add_Emp();//添加職工

 void Del_Emp();//刪除職工

 void Find_Emp();//查找職工

 void Mod_Emp();//修改職工

 void Show_Emp();//顯示職工

 void Sort_Emp();//排序

 void Clean_File();

 int IsExist(int id);//按照職工編號判斷職工是否存在,存在返回職工在數(shù)組中的位置,不存在返回-1

 void save();//保存文件

 bool m_FileIsEmpty;//判斷文件是否為空,標(biāo)志

 int get_EmpNum();//統(tǒng)計人數(shù)

 void init_Emp();//初始化元員工 

 ~WorkerManager();
};

worker.h

#pragma once//防止頭文件重復(fù)包含
#include <iostream>
#include <string>
using namespace std;
class Worker//職工抽象類
{
public:
 //顯示個人信息
 virtual void showInfo() = 0;
 //獲取崗位名稱
 virtual string getDeptName() = 0;

 int m_Id;//職工編號
 string m_Name;//職工姓名
 int m_DeptId;//職工所在部門的編號
};

employee.h

#pragma once
#include <iostream>
using namespace std;
#include "worker.h"

class Employee :public Worker
{
public:
 //構(gòu)造函數(shù)
 Employee(int id, string name, int dId);

 //顯示個人信息
 virtual void showInfo();

 //獲取崗位信息
 virtual string  getDeptName();
};

manager.h

#pragma once
#include <iostream>
using namespace std;
#include "worker.h"

class Manager :public Worker
{
public:
 //構(gòu)造函數(shù)
 Manager (int id, string name, int dId);

 //顯示個人信息
 virtual void showInfo();

 //獲取崗位信息
 virtual string  getDeptName();
};

boss.h

#pragma once
#include <iostream>
using namespace std;
#include "worker.h"

class Boss :public Worker
{
public: 
 Boss(int id, string name, int dId);
 virtual void showInfo();
 virtual string getDeptName();
};

職工管理系統(tǒng).cpp

#include <iostream>
using namespace std;
#include "WorkerManager.h"
#include "worker.h"
#include "employee.h"

int main()
{
 WorkerManager wm;//實例化管理對象
 int choice = 0;//存儲用戶
 while (true)
 {
  //顯示菜單
  wm.Show_Menu();
  cout << "請輸入你的選擇:" << endl;
  cin >> choice;
  switch (choice)
  {
  case 0://退出系統(tǒng)
   wm.ExitSystem();
   break;
  case 1://增加職工
   wm.Add_Emp();
   break;
  case 2://刪除職工
   wm.Del_Emp();
   break;
  case 3://查找職工
   wm.Find_Emp();
   break;
  case 4://修改職工
   wm.Mod_Emp();
   break;
  case 5://顯示職工
   wm.Show_Emp();
   break;
  case 6://排序職工
   wm.Sort_Emp();
   break;
  case 7://清空文檔
   wm.Clean_File();
   system("cls");
   break;
  }
 }
 system("pause");
 return 0;
}

workermanager.cpp

#pragma once//防止頭文件重復(fù)包含
#include <iostream>
#include "worker.h"
using namespace std;
#include "boss.h"
#include "employee.h"
#include "manager.h"

#include <fstream>
#define FILENAME "empFile.txt"

class WorkerManager
{
public:
 WorkerManager();

 void Show_Menu();//菜單功能

 void ExitSystem();//退出功能

 int m_EmpNum;//記錄職工人數(shù)

 Worker ** m_EmpArray;//職工數(shù)組指針

 void Add_Emp();//添加職工

 void Del_Emp();//刪除職工

 void Find_Emp();//查找職工

 void Mod_Emp();//修改職工

 void Show_Emp();//顯示職工

 void Sort_Emp();//排序

 void Clean_File();

 int IsExist(int id);//按照職工編號判斷職工是否存在,存在返回職工在數(shù)組中的位置,不存在返回-1

 void save();//保存文件

 bool m_FileIsEmpty;//判斷文件是否為空,標(biāo)志

 int get_EmpNum();//統(tǒng)計人數(shù)

 void init_Emp();//初始化元員工 

 ~WorkerManager();
};

employee.cpp

#include "employee.h"

Employee::Employee(int id, string name, int dId)
{
 this->m_Id = id;
 this->m_Name = name;
 this->m_DeptId = dId;
}

void Employee::showInfo()
{
 cout << "職工編號:" << this->m_Id
  << "\t職工姓名:" << this->m_Name
  << "\t崗位:" << getDeptName()
  << "\t崗位職責(zé):完成經(jīng)理交給的任務(wù)" << endl;
}

string Employee::getDeptName()
{
 return string("員工"); 
}

manager.cpp

#include "manager.h"

Manager::Manager(int id, string name, int dId)
{
 this->m_Id = id;
 this->m_Name = name;
 this->m_DeptId = dId;
}

void Manager::showInfo()
{
 cout << "職工編號:" << this->m_Id
  << "\t職工姓名:" << this->m_Name
  << "\t崗位:" << getDeptName()
  << "\t崗位職責(zé):完成老板布置的任務(wù)并下發(fā)給員工" << endl;
}

string Manager::getDeptName()
{
 return string("經(jīng)理");
}

boss.cpp

#include "boss.h"

Boss::Boss(int id, string name, int dId)
{
 this->m_Id = id;
 this->m_Name = name;
 this->m_DeptId = dId;
}

void Boss::showInfo()
{
 cout << "\t職工編號:" << this->m_Id
  << "\t職工姓名:" << this->m_Name
  << "\t崗位:" << getDeptName()
  << "\t崗位職責(zé):管理整個公司" << endl;
}

string Boss::getDeptName()
{
 return string ("老板");
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++利用GPAC實現(xiàn)生成MP4文件的示例代碼

    C++利用GPAC實現(xiàn)生成MP4文件的示例代碼

    GPAC主要針對學(xué)生和內(nèi)容創(chuàng)作者,代表了一個跨平臺的多媒體框架,開發(fā)人員可以使用它在?LGPL?許可下制作開源媒體。本文就來用GPAC實現(xiàn)生成MP4文件,感興趣的可以了解一下
    2023-02-02
  • 對C++默認(rèn)構(gòu)造函數(shù)的一點重要說明

    對C++默認(rèn)構(gòu)造函數(shù)的一點重要說明

    下面小編就為大家?guī)硪黄獙++默認(rèn)構(gòu)造函數(shù)的一點重要說明。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • C語言代碼實現(xiàn)三子棋小游戲

    C語言代碼實現(xiàn)三子棋小游戲

    這篇文章主要為大家詳細(xì)介紹了C語言代碼實現(xiàn)三子棋小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • C++實現(xiàn)LeetCode(312.打氣球游戲)

    C++實現(xiàn)LeetCode(312.打氣球游戲)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(312.打氣球游戲),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++中的幾個特殊符號說明

    C++中的幾個特殊符號說明

    這篇文章主要介紹了C++中的幾個特殊符號說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C++容器算法示例詳解

    C++容器算法示例詳解

    在談到容器算法,我們大概率會用到謂詞predicate,謂詞返回的類型是布爾類型(bool)可以是lambda表達(dá)式、函數(shù)對象以及其它可調(diào)用的對象,這篇文章主要介紹了C++容器算法,需要的朋友可以參考下
    2024-08-08
  • C語言之實現(xiàn)單鏈表指定結(jié)點的插入方式

    C語言之實現(xiàn)單鏈表指定結(jié)點的插入方式

    這篇文章主要介紹了C語言之實現(xiàn)單鏈表指定結(jié)點的插入方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • c++冒泡排序詳解

    c++冒泡排序詳解

    冒泡排序(Bubble Sort),是一種計算機(jī)科學(xué)領(lǐng)域的較簡單的排序算法。它重復(fù)地走訪過要排序的數(shù)列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數(shù)列的工作是重復(fù)地進(jìn)行直到?jīng)]有再需要交換,也就是說該數(shù)列已經(jīng)排序完成。
    2017-05-05
  • 詳解C語言編程中預(yù)處理器的用法

    詳解C語言編程中預(yù)處理器的用法

    這篇文章主要介紹了C語言編程中預(yù)處理器的用法,包括介紹了C和C++混合編程的情況,需要的朋友可以參考下
    2016-02-02
  • EasyC++編寫頭文件

    EasyC++編寫頭文件

    這篇文章主要介紹了C++編寫頭文件,在一個C++程序中,只包含兩類文件——.cpp文件和.h文件。其中,.cpp文件被稱作C++源文件,里面放的都是C++的源代碼;而.h文件則被稱作C++頭文件,里面放的也是C++的源代碼,感興趣的小伙伴一起來看下面文章的詳細(xì)介紹吧
    2021-12-12

最新評論