員工資訊管理(基礎功能 (類的多型 虛基類)

2021-09-13 23:57:43 字數 1885 閱讀 1614

1、本程式是在vs2017上編譯的,以前很多可用的c語言裡的函式在這個版本不能夠使用,就比如其中的scanf_s以及strcpy_s均是為了讓原版函式更安全,傳入乙個和引數有關的大小值,避免引用到不存在的元素,防止hacker利用原版的不安全性黑掉系統。

scanf_s與getchar連用可以清空快取區,避免程式死迴圈

2、能夠簡單的實現頁面的切換,對輸入選擇的判斷以及資訊的錄入和顯示,沒有新增儲存、增刪改查等功能;本程式主要是為了研究虛基類以及類的多型性。

employee.h

#ifndef _employee_h_

#define _employee_h_

extern int m_setid;

class employee

void setname(char *name); /*設定姓名,獲取姓名,獲取員工號,獲取收入*/

char* getname()

int getid()

virtual double getsalary() = 0;

};class technician :virtual public employee

void sethourlywage(double wage)

virtual double getsalary()

};class salesman :virtual public employee

void set_royalty_ratio(double royalty_ratio)

virtual double getsalary()

};class manager :virtual public employee

virtual double getsalary()

};class salsemanager :virtual public salesman, virtual public manager

};#endif // !_employee_h_

#pragma once

主程式

#include#include"employee.h"

using namespace std;

int m_setid = 1;

extern class employee;

extern class technician;

extern class salesman;

extern class manager;

extern class salsemanager;

void technician();

void salesman();

void manager();

void salsemanager();

int main()

; cout << "歡迎使用員工資訊錄入程式!" << endl;

while (1)

cout << "請輸入您的選擇:" << endl;

rt = scanf_s("%d", &cho);

if (rt != 1)

else

if (flag_exit == 1)

}} system("pause");

return 0;

}void technician()

void salesman()

void manager()

void salsemanager()

employee.cpp

void employee::setname(char *name)

大部分的功能實現我都放在了標頭檔案裡

簡單的員工資訊管理系統

查詢員工 顯示當前系統的所有員工 新增員工 新增員工到當前的系統中 刪除員工 從系統中刪除員工 退出 直接退出 person list 張一 t22 t男 t北京 李二 t23 t男 t天津 王三 t24 t女 t廣州 吳四 t25 t女 t上海 劉五 t26 t男 t三亞 宋七 t27 t女 t武...

員工管理資訊的刪增功能

員工資訊 1.可進行模糊查詢,語法至少支援下面3中 1.select name age from staff table where age 22 選擇姓名,年齡在22歲以上的員工的年齡 2.select from staff table where dept it 從員工表中選擇 it 3.sel...

STL容器List應用 簡易的員工資訊管理系統

員工編號 部門編號 姓名年齡 工資 1 按部門公升序顯示,在部門中按員工編號顯示 2 按工資從高到低顯示,工資水平一樣的按照部門公升序顯示,部門裡按員工編號公升序 按員工編號查詢 按員工編號刪除 刪除 工資 低於 1000元的員工 刪除 某個 部門的所有員工 include include incl...