![]() |
#2
gdzhan2007-07-31 19:39
|
新手,,,,刚看完C++ PRIMER PLUS,,,对文件处理不太会,,还有个删除功能实现不了,
请看过的师傅帮偶提个好点的算法,,谢谢了,, 还有我这用的是不是面向对像的编程阿,^_^
菜鸟没办法了
// Employee.h
#ifndef _EMPLOYEE_H
#define _EMPLOYEE_H
#include <cstring>
/////////////////////////////////////////////////////////////////
//emp命名空间包含员工类定义
namespace emp
{
class Employee
{
private:
enum {MAXEMP = 20};
char empname[MAXEMP]; //员工姓名
char empnumber[MAXEMP]; //员工编号
char empdepart[MAXEMP]; //所属部门
char empgrade[MAXEMP]; //员工级别
long empold; //员工年龄
Employee(const Employee &em) {} //不允许员工之间赋值
Employee& operator= (const Employee &em) {}
public: //对外接口
Employee();
void Input_Employee(); //录入数据
void View_Employee(); //显示数据
//获取员工信息
char* getempname();
char* getempnumber();
char* getempdepart();
char* getempgrade();
long getempold();
};
}
#endif
-----------------------------------------------------------------
// Employee.cpp
#include <iostream>
#include <cstring>
#include "Employee.h"
///////////////////////////////////////////////////
// 员工类接口实现
namespace emp
{
using std::cout;
using std::endl;
using std::cin;
using std::ios_base;
//////////////////////////////////////////////////
// 初始化员工元素
Employee::Employee()
{
empname[0] = '\0';
empnumber[0] = '\0';
empdepart[0] = '\0';
empgrade[0] = '\0';
empold = 0L;
}
/////////////////////////////////////////////////
// 输入员工信息
void Employee::Input_Employee()
{
cout << "员工姓名: ";
cin.getline (empname, MAXEMP - 1);
cout << "员工编号: ";
cin.getline (empnumber, MAXEMP - 1);
cout << "员工所属部门: ";
cin.getline (empdepart, MAXEMP - 1);
cout << "员工级别: ";
cin.getline (empgrade, MAXEMP - 1);
cout << "员工年龄: ";
if (cin >> empold)
{
while (cin.get() != '\n')
continue;
return;
}
else
{
cin.clear();
while (cin.get() != '\n')
continue;
return;
}
}
/////////////////////////////////////////////////
// 显示员工信息
void Employee::View_Employee()
{
cout << "员工姓名: " << getempname() << endl;
cout << "员工编号: " << getempnumber() << endl;
cout << "员工所属部门: " << getempdepart() << endl;
cout << "员工级别: " << getempgrade() << endl;
cout << "员工年龄: " << getempold() << endl;
}
//////////////////////////////////////////////////
// 获取员工元素
char* Employee::getempname()
{
return empname;
}
char* Employee::getempnumber()
{
return empnumber;
}
char* Employee::getempdepart()
{
return empdepart;
}
char* Employee::getempgrade()
{
return empgrade;
}
long Employee::getempold()
{
return empold;
}
}