- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c复习1
实验:C++程序的编写和实现
用C++语言编写程序。C++程序以.cpp为后缀名。
对源程序进行编译。以源程序文件为单位分别编译,每个源程序文件编译成一个目标程序。目标程序以.o.obj为后缀名。
对目标文件进行连接将一个程序的所有目标程序和系统的库文件以及系统提供的其他信息连接起来,形成一个可执行的二进制文件,它的后缀是.exe
运行程序运行最终形成的可执行二进制文件。
C
C语言即具备高级语言的结构和编程环境,又提供类似于汇编语言的系统资源操纵能力及程序执行效率。适合解决有实时要求的问题。
有丰富的运算符和数据类型,表达式类型多样化,可以方便地实现在其他语言中较难实现的运算,对各种不同类型的程序设计都有良好的适应性。
面向过程的程序设计(结构化、模块化的程序设计)
面向过程的程序设计(结构化程序设计)
设计思路:自顶向下,逐步求精;
程序结构:按功能划分成若干个基本模块,模块间形成树状关系,而每个模块内部均由顺序、选择和循环3种基本结构组成;
程序设计方法:采用模块分解与功能抽象,将一较复杂的程序系统任务分解成易于控制、处理的子任务;
主要缺点:数据与程序的分离;存在错误的数据调用正确的程序模块,或正确的数据调用错误的程序模块。
面向对象程序设计的基本想法是把要构造的系统表示为对象的集合,不同对象之间的相互作用和相互通信构成了完整的系统。
面向对象思想的由来
“面向对象”是软件工程设计的新思想,利用对象,面向对象程序可以比较自然地模拟客观世界,使人们分析、设计和实现软件系统的方法学与认识客观世界的过程尽可能地接近,使我们的程序设计更贴近现实,使描述问题的“问题空间”与解决问题的“方法空间”尽可能地一致。
“对象”是现实生活中经常遇到的表示现实世界的某一具体事物。它既有静态属性,又具有动态行为。面向对象语言的“对象”是将某些数据及作用于其上的一组基本操作(过程)的封装体。
客观世界中任何一个事物都可以看作是一个对象(object)。
对象可大可小,是构成系统的基本单位。
任何一个对象都具有两个要素:属性和行为。
一个系统的多个对象之间通过一定的渠道相互联系。对象之间是通过发送和接收消息相互联系的。
每个对象都是由数据和函数(即操作代码)两部分组成
数据体现了“属性”
函数体现了“行为”
对象是将一组数据和使用该组数据的一组基本操作封装在一起而形成的一个实体。
对象之间通过一定的渠道相互联系
数据封装与信息隐蔽
封装:把一个对象的一部分属性和功能对外界屏蔽,也就是说从外面是看不到的甚至是不可知的。
面向对象程序设计中的“封装性”包含两方面的含义:
将有关的数据和操作代码封装在一个对象中,形成一个基本单位,各对象间相对独立,互不干扰。
将对象中某些部分对外隐蔽,即隐蔽细节只留下少量接口与外界联系,接收外界的信息。(信息隐蔽)
信息隐蔽有利于数据安全。
C++对象中的函数名就是对象的对外接口,外界通过函数名调用这些函数实现某些功能。
抽象
抽象的过程是将有关事物的共性归纳集中的过程。
抽象的作用是表示同一类事物的本质。
C和C++中的数据类型就是对一批具体的数的抽象。
继承与重用
在已有类的基础上通过增加一些属性和行为而得到一个新类的机制就是面向对象程序设计中的继承机制
C++提供了继承机制,利用继承方法可以方便地利用一个已有的类建立一个新的类,这使得已有软件中的一部分甚至是大部分可以重用,大大节省了编程工作量。这就是常说的软件重用。
多态性
函数重载
C语言中不允许函数有同名的情况
在面向对象程序设计语言中,如果多个函数功能基本一致,允许具有相同的名字。
函数重载的两种形式
早期匹配(静态联编):在编译时进行匹配。两个或多个函数函数名相同,但参数不同,函数体不同,也可以不同。根据实参的个数和类型决定相匹配的个函数体。
晚期匹配(动态联编):在运行时动态匹配。函数名,返回类型,函数参数的类型顺序,个数完全相同,函数体不同。由继承产生的相关而不相同的类,其对象对同一消息作出不同反应。
运算符重载
面向对象方法学要点
认为世界由各种对象组成,对象的特征是:
·有一个名字,以区别于其它对象;
·有一组状态,用以描述其特征;
·有一组操作,每个操作决定了对象的功能或行为;
·对象的操作又分为自身所承受的操作和施加于其它对象的操作。
所有的对象划分成各种“对象类”
每个对象类均定义了一组方法(Method
对象间的联系靠消息(Message)传递
由于对象的封装性,一切外部对对象的作用,只能靠发送消息,再通过对象自身的行为(方法)来实现。
从而使上一层对象类性质被下一层的对象类所继承,有利于避免信息冗余,实现软件的重用。
围绕功能进行,用一个函数实现一
您可能关注的文档
最近下载
- 2014-2015中国黄金集团公司宣传册.PDF VIP
- 中小学(三阶魔方的复原)校本教材.docx
- 五年(21-25)高考真题分类汇编专题13空间向量与立体几何(选填题)8种常见考法归类(全国通用)(含解析).docx VIP
- 广东省紧密型县域医共体(已挂牌)名单明细表1126.doc VIP
- 2.8_非自然人分布式光伏发电项目购售电合同(2022版).docx VIP
- 煤矿行业智慧矿山信息化解决方案(26页 PPT).pptx VIP
- 工程竣工统一验收方案(3篇).docx VIP
- 不合格品管理及返工的.ppt VIP
- 汇报发言:聚焦学查改,提升学习教育质效.docx VIP
- DB32T-预制混凝土劲性体复合地基技术规范(报批稿)及编制说明.pdf VIP
文档评论(0)