- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
顺序存储模板单链表线性表的实现数据结构与算法(C)精要
3.模板顺序表类SqList#pragmaonce//文件名:CStu.h//Cstu类的定义与声明#ifndef _CStu_h#define_CStu_h#includeiostream#includecstdlib#includestring#includeiomanip#includeSqList.husingnamespace std;//存储学生记录的类CstuclassCstu{//重载输出流插入符 输出学生数据friendostream operator(ostream os, constCstu stu);//重载输入流提取符 输入学生数据friendistream operator (istream is, Cstu stu);private:string number;//学号string name;//姓名string grade;//年级string score;//成绩public://构造函数Cstu(stringnu = , stringna = , stringgr = , stringsc = );};#endif//文件名:Cstu.cpp//类Cstu的实现#includeCstu.h//包含实现任意ElemType类型数据的输入与输出的类CDataTemp的定义与实现/存储学生记录的类Cstu的实现和定义//构造函数Cstu::Cstu(stringnu, stringna, stringgr, stringsc){number =nu;name =na;grade =gr;score =sc;}//重载输出流插入符 输出学生数据ostream operator(ostream os, constCstu stu){os setiosflags(ios::left) setw(8) stu.number setiosflags(ios::left) setw(12) stu.name setiosflags(ios::left) setw(8) stu.grade setiosflags(ios::left) setw(8) stu.score;returnos;}//重载输入流提取符 输入学生数据istream operator (istream is, Cstu stu){cout 请输入学生的学号:; isstu.number;cout 请输入学生的姓名:; isstu.name;cout 请输入学生的年级:; isstu.grade;cout 请输入学生的成绩:; isstu.score;cout endl;returnis;}#pragmaonce//文件名:SqList.h//SqListInt类的定义与声明#ifndef _SqListInt_h#define_SqListInt_h#includeiostream#includecstdlib#includestring#includeiomanip#includeCStu.husingnamespace std;template classElemTypeclassSqList{protected:// 顺序表实现的数据成员:int count;// 元素个数int maxSize;// 顺序表最大元素个数ElemType *elems;// 元素存储空间public:// 抽象数据类型方法声明及重载编译系统默认方法声明:void Init(intsize);// 初始化线性表bool Full() const;// 判断线性表是否已满SqList(intsize = 10);// 构造函数模板virtual ~SqList();// 析构函数模板int Length() const;// 求线性表长度bool Empty() const;// 判断线性表是否为空void Clear();// 将线性表清空void Traverse(void(*visit)(constElemType )) const;// 遍历线性表bool GetElem(intposition, ElemType e) const;// 求指定位置的元素bool SetElem(intposition, constElemType e);// 设置指定位置的元素值bool Delete(intposition, ElemType e);// 删除元素bool Insert(intposition, constElemType e);// 插入元素SqList(constSqList copy);// 复制构造函数模板SqList operator =(constSqList copy);// 重载赋值运算符};// 判断线
您可能关注的文档
- 项目融资资金来源精要.ppt
- 项目融资组织精要.ppt
- 微观经济学-现代观点课件-5选择Choice要点.pptx
- 项目计划任务书精要.doc
- 项目计划书_基于树莓派智能家庭监控系统.精要.doc
- 项目计划与控制5(资源管理)精要.ppt
- 项目责任书精要.doc
- 项目质检部年终总结精要.doc
- 项目管理案例分析1211-1精要.ppt
- 微观经济学2012第二讲要点.ppt
- 二零二五版!借款合同模板!附借据!.docx
- 2025年河南省信阳市罗山县高三下学期3月联考数学试卷.docx
- 2025年河南省信阳市罗山县高三一模数学试卷及答案.docx
- 2025年河南省信阳市潢川县高三下学期考前数学适应性演练(二)试题.docx
- 2025年河南省信阳市潢川县高三下学期3月联考数学试卷.docx
- 2025年河南省信阳市潢川县高三二模数学试卷及答案.docx
- 十五章电流电路作业课件节两种电荷.pptx
- 2025年河南省信阳市淮滨县高三下学期考前数学适应性演练(二)试题.docx
- 2025年河南省信阳市淮滨县高三二模数学试卷及答案.docx
- 《计算机系统基础:注册表篇》课件.ppt
文档评论(0)