用C++实现手机通讯录(好的再加分!)

来源:百度知道 编辑:UC知道 时间:2024/06/12 06:13:08
手机通讯录
1、基本要求:
(1)要求利用面向对象的方法以及C++的编程思想来完成系统的设计;
(2)要求在设计的过程中,建立功能明确的类;
(3)在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法;
2、创新要求:
在基本要求达到后,可进行创新设计,如具有按照姓名、手机号排序等功能,修改已有手机信息、设计出比较友好的操作界面等。
3、写出设计说明书
设计方法和基本原理:
1.问题描述
每个手机都有电话号码簿。使用C++,模拟实现手机电话号码簿,号码簿包括姓名,手机号、手机成员类别。
2.基本要求
(1) 定义手机电话号码簿类,定义电话号码簿对象。设手机最多可以保存100个手机号。
(2) 成员类别有: 家庭、同学、同事、朋友等,可以定义成枚举类型
(3) 按照成员类别统计手机数量
(4) 要求该系统具有新增、删除手机号码、修改手机号码、姓名、类别。
(5) 通信录以文本文件形式保存在盘上。
一楼的汗死我了……谁能用C++编个程序实现这种功能撒,不甚感激哇……

#include<iostream>
#include<string>
#include<iomanip>
#include<fstream>
using namespace std;
class CData
{
public:
CData(){};
virtual int Compare(CData &)=0;
virtual void Show()=0;
virtual ~CData(){};
};
class CNode
{
private:
CData *pData;
CNode *pNext;
public:
CNode(){pData=0;pNext=0;};
CNode(CNode &node)
{
pData=node.pData;
pNext=node.pNext;
}
void InputData(CData *pdata){pData=pdata;}
void ShowNode(){pData->Show();}
CData *GetData(){return pData;}
friend class CList;
};
class CList
{
CNode *pHead;
public:
CList(){pHead=0;}
~CList(){DeleteList();}
void AddNode(CNode *pnode);
CNode *DeleteNode(CNode *);
CNode *LookUp(CData&);
void ShowList();
void DeleteList();
CNode*GetListHead(){return