mis系统
一、实验目的
●熟悉文件流
●熟练掌握类的封装,继承与多态的运用
二、实验实验环境:
在Code::Blocks编辑器下实现c++编写
三、实验内容
实现一个mis系统
1. 要求至少有两类用户
2. 可以登录后有两类用户
3.利用面向对象技术,充分利用继承和多态及文件流
四、实验前的分析
所谓MIS(管理信息系统--Management InformationSystem)系统,主要指的是进行日常事物操作的系统。这种系统主要用于管理需要的记录,并对记录数据进行相关处理。
过继承机制,可以利用已有的数据类型来定义新的数据类型。所定义的新的数据类型不仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为基类,又称为父类。由已存在的类派生出的新类称为派生类,又称为子类。
多态指同一个实体同时具有多种形式。它是面向对象程序设计(OOP)的一个重要特征。如果一个语言只支持类而不支持多态,只能说明它是基于对象的,而不是面向对象的。C++中的多态性具体体现在运行和编译两个方面。运行时多态是动态多态,其具体引用的对象在运行时才能确定。编译时多态是静态多态,在编译时就可以确定对象使用的形式。多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法。C++中,实现多态有以下方法:虚函数,抽象类,重载,覆盖,模版。
文件流,简单来说就是建立在面向对象基础上的一种抽象的处理数据的工具。在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等,程序员是对流进行所有操作的,而不用关心流的另一头数据的真正流向。流不但可以处理文件,还可以处理动态内存、网络数据等多种数据形式。
五、实验步骤
1.新建一个mis.cpp文件用于实现员工对基本信息的查询,老板对信息的管理,员工只具有看的权限,老板在具有看的权限的同时还具有修改和删除的功能.
2.完善登陆界面,此界面包括用户注册,普通用户登录,管理员登录,以及退出部分
cout<<" 简单信息管理系统 "<<endl;
cout<<" 1. 用户注册 "<<endl;
cout<<" 2. 用户登录 "<<endl;
cout<<" 3. 管理员登录 "<<endl;
cout<<" 4. 退出系统 "<<endl;
cout<<" 其它:终止系统"<<endl;
cout<<"请输入操作项:";
cin>>key;
3.完善注册界面
cout<<"输入姓名:"; cin>>a;
cout<<"输入密码:"; cin>>b;
cout<<"输入性别:"; cin>>c;
cout<<"输入年龄:"; cin>>d;
cout<<"输入职业:"; cin>>f;
b1.Setdata(a,b,c,d,f);
file3.open("message.dat",ios::app|ios_base::app);//增补方式打开文件
file3.write((char*)&b1,sizeof(b1));
file3.close();
4.完善普通用户登录界面
cout<<"输入你的名子:"; cin>>b;
cout<<"输入你的密码:";cin>>c;
file1.open("message.dat",ios::in | ios::in);//按读方式打开文件
if (!file1)
{
cout<<"文件打开失败!"<<endl;