以外的其它所有数据成员和成员函数,在派生类中可以直接访问,从而实现了代码的复用。
3、派生类是继承原有类的特性而生成的新类的名称。
一个派生类可以同时有多个基类,这种情况称为多继承,这时派生类只有一个直接基类的情况,称为单继承。
单继承可以看作是多继承的一个最简单的特例,多继承可以看作是多个单继承的组合,它们之间的很多特性是相同的。
在派生过程中,派生出来的新类也同样可以作用基类再继承派生新的类,此外,一个基类可以同时派生出多个派生类。
也就是说,一个类从父类继承来的特征也可以被其他新的类所继承,一个父类的特征,可以同时被多个子类继承。
这样,就形成了一个相互关联的类的家族,有时也称作类族。
类的组合 组合构造函数定义的一般形式为:在创建一个组合类的对象时,不仅它自身的构造函数将被调用,而且还将调用其内嵌对象的构造函数。
这时构造函数的调用顺序是:调用内嵌对象的构造函数,调用顺序按照内嵌对象在组合类的定义中出现的次序。
执行本类构造函数的函数体。
4、数据类型的应用 bool 类型的应用 3 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文) 有几个模块使用的为 bool 类型的存储,bool 在 C里是占用 1 字节而 BOOL 是 int类型,int 类型的大小是视具体环境而定的;所以来说:false/true 只占用 1 个字节而 TRUE/FALSE 视具体环境而言的。
bool course::search 这里我应用 C中的 bool类型来存储课程名。
5.应用 fstream 类对 C进行文件操作 在程序中我应用了:ifstream infileinfile.openquotpstuData.txtquot这些都用到了 fstream 类中的属性,可以对 C进行文件读取操作。
ltfstreamgt库包含了三个基本的类:ifstream ofstream 和 fstream。
这三个类分别代表一个输入文件,一个输出文件,以及一个输入输出文件。
Ifstream 类支持gtgt操作符,ofstream 类支持ltlt操作符,fstream 类同时支持gtgt和ltlt操作符。
所有ltfstreamgt对象都能够把一个文件名当成构造函数的变量,并能够自动的打开文件,如: std::ofstream dictionaryquotmyfile.txtquot 所以当你忘记关闭文 ltfstreamgt类的析构函数自动地添加清除文件内容并关闭文件,件时也无大碍。
如果在构造函数中不提供一个文件名,可以通过调用 open成员方法来打开文件,如下所示: std::ofstream dictionary dictionary.openquotmyfile.txtquotdictionary.close //explicit 文件打开模式: 如果不具体指明文件的打开模式,fstream 类会使用缺省模式。
例如,ifstream 在缺省情况下会以读的模式打开一个文件,并把文件指针定在文件的起始处。
同样的,ofstream 在缺省情况下也是以读的模式打开一个文件。
你可以通过使用 OR 操作符设置多个标记,如下所示:ofstream logfilequotlogin.datquot ios::binaryios::app 下面是包含的库函数: includeltiostreamgt includeltfstreamgt includeltstringgt2.2 程序中涉及的类的 UML 类图和主要函数流程图或框图。
2.2.1 系统的 UML 类 统一建模语言(UML)是用来对软件密集系统进行描述、构造、视化和文档编制的一种语言。
UML 建模的具体占先式实时内核概述占先式实时内核具有多任务机制。
UML 是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
它溶入了软件工程领域的新思想、新方法和新技术。
它的作用域不限于支持面向对象的分析与设计还支持从需求分析开始的软件开发的全过程。
多任务机制是基于面向任务对象的,以任务为对象,以事 4 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)件和时间为驱动,通过实时内核管理时间关键任务和任务的优先级,实现任务之间的调度、协同和仲裁。
多任务机制的具体实现由调度程度来完成。
下图为系统的 UML 图 图 2.1 类的 UML 图2.2.2 主要函数流程图下图为系统的功能模块图 图 2.2 系统功能模块图 5 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)2.3 程序源代码student::choicecoutltltquot欢迎进入选课主页quotltltendlifstream infilequotD:zlz_1.txtquotios::binaryifinfilecerrltltquot不能打开 zlz_1.txt 文件quotltltendlexit1ofstream f1quotD:zlz_2.txtquotiff1 cerrltltquot不能打开 zlz_2.txt 文件quotltltendlexit1coutltltquot请输入名字:quotcingtgtnamecoutltltquot请输入umchar a20char mdocoutltltquot请输入所要选择的课程名称:quotcingtgtawhileinfile.eofinfile.readchar ampcoursizeofcourifstrcmpcour.programa0numbercour.number strcpyprogramcour.programstrcpyxzcour.xztimecour.timestrcpyperiodcour.period stu.numnumstrcpystu.namenamestu.numbernumberstrcpystu.programprogramstrcpystu.xzxzstu.timetimestrcpystu.periodperiodf1.writechar ampstusizeofstu coutltltquot是否继续选课Y/N:quot 6 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)cingtgtm whilemYmyinfile.closef1.closereturn 0int student::moditifychar a20int n0ifstream f1quotD:zlz_2.txtquotios::iniff1 cerrltltquot不能打开 zlz_2.txt 文件quotltltendlexit1whilef1.eoff1.readchar ampstusizeofstunumstu.numstrcpynamestu.namenumberstu.numberstrcpyprogramstu.programstrcpyxzstu.xztimestu.timestrcpyperiodstu.periodsn.numnumstrcpysn.namenamesn.numbernumberstrcpysn.programprogramstrcpysn.xzxzsn.timetimestrcpysn.periodperiodnf1.closeofstream f2quotD:zlz_2.txtquotiff2 cerrltltquot不能打开 zlz_2.txt 文件quotltltendlexit1forint i0iltnif2.writechar ampsisizeofsif2.closeifstream f4quotD:zlz_2.txtquotios::iniff4 7 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)cerrltltquot不能打开 zlz_2.txt 文件quotltltendlexit1 coutltltquot请输入名字:quotcingtgtnamecoutltltquot请输入umcoutltltquot请输入所要修改的课程名称:quotcingtgtaint ifori0ilt1000if4.readchar ampsisizeofsiifstrcmpcour.program a0numbersi.numberstrcpyprogramsi.programstrcpyxzsi.xztimesi.timestrcpyperiodsi.periodcoutltltnumberltltquot quotltltprogramltltquot quotltltxzltltquotquotltlttimeltltquot quotltltperiodltltendlcoutltltquot请输入你重新选修的课程:quotcingtgtaforint j0jltnjf4.readchar ampsisizeofsiifstrcmpsi.program a0numbersj.numberstrcpyprogramsj.programstrcpyxzsj.xztimesj.timestrcpyperiodsj.period si.numnumstrcpysi.namenamesi.numbernumberstrcpysi.programprogramstrcpysi.xzxzsi.timetime 8 辽 宁 工 业 大 学 课 程 设 计 说 明 书(论 文)strcpysi.periodperiodf4.closeofstream f3quotD:zlz_2.txtquotiff3cerrltltquot不能打开 zlz_2.txt 文件quotltltendlexit1fori0iltnif3.writechar ampsisizeofsireturn nvoid student::listint iifstream f1quotD:zlz_2.txtquotios::iniff1cerrltltquot不能打开 zlz_2.txt 文件quotltltendlexit1utltltquot请输入名字:quotcingtgtnamecoutltltquot请输入umcoutltltquot课程号quotltltquot quotltltquot课名称quotltltquot quotltltquot课性质quotltltquot quotltltquot总学时quotltltquot quotltltquot开课学期quotltltendlfori0iltmoditifyif1.readchar ampsisizeofsiifstrcmpsi.namename
上一篇:
【精品】外挂制作入门
下一篇:
高中生2016外国励志名言精选