(第一章 c++入门.ppt

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(第一章c入门

第一章 C++入门 本章主要内容: 程序与语言 结构化程序设计 面向对象程序设计 从C到C++ 面向对象的基本概念 面向对象语言的发展与现状 程序开发过程 C++程序结构 一. 程序与语言 程序的概念 可执行的机器指令的序列。(计算机) 借助于某种程序设计语言,为了解决某个特定任务而编制的语句序列。(程序员) 程序设计语言的发展 可分为两个阶段: 低级语言阶段 机器语言、汇编语言 高级语言阶段 Fortran,Basic,c/ c++等 程序设计的目标主要是不断提高软件质量,软件的质量分为: 软件的内部质量:指软件中与开发人员有关的质量因素 可读性 可维护性 软件的外部质量:指软件中与用户和维护人员有关的因素 正确性 健壮性 可扩充性 可复用性 二. 结构化程序设计 软件总是由被加工的对象及有关的功能构成。 在软件开发过程中,总面临着两种选择: 一个是把侧重点放在功能上 一个是把侧重点放在对象上 结构化程序设计(Structure Programming) 设计思路: 自顶向下,逐步求精;其程序结构是按功能划分成若干个基本模块,这些模块形成一个树状结构。 优点: 有效地将一个较复杂的程序系统的设计任务分成许多易于控制和处理的子任务,这些子任务都是可独立编程的子程序模块。 结构化程序设计 缺点: 数据与操作分离,缺乏数据保护; 程序难以复用;? 由于程序的结构过于围绕事先确定好的功能,使得功能的扩充、删除及修改变得相当困难。 有人对大量解决具体实际问题的程序中的接口、功能、过程执行顺序、数据及对象的易变性进行了统计比较: 接口: 极为易变 功能: 很易变 过程执行顺序:很易变 数据(从长期讲):不易变 对象:最为稳定 三. 面向对象程序设计 设计思路: 以数据为中心、基于数据抽象(把数据及其操作作为一个整体构成对象)的程序设计风范。 程序 = 对象 + 对象 + … 对象 = 数据 + 操作 对数据的操作是通过向包含数据的对象发送消息来实现(调用对象的操作). 优点: 加强数据保护(数据抽象与封装); 更好地支持程序复用; 能够适应软件功能的变化。 缺点: 程序的整体功能描述不明显。? 五. 面向对象的基本概念 面向对象程序设计(OOP) “面向对象程序设计”技术追求的是软件系统对现实世界的直接模拟,尽量实现将现实世界中的事物直接映射到软件系统的解空间。 “对象”的概念 现实世界中,对象表示的是某个具体事物。 计算机世界中,对象是按照封装的方法构造的与客观世界具体成分相对应的软件模块。 对象中所封装的是描述这些客观世界具体成分的一组数据(称为属性),及这些数据上的一组操作(称为行为)。 类:是对象的抽象及描述,它具有统一属性和操作的的多个对象的统一描述体。 对象的特性 模块独立性: 从逻辑上看,一个对象是一个独立存在的模块;从外部看这模块,只需了解它具有哪些功能。 动态连接性: 在面向对象程序设计中,通过消息激活机制,把对象之间动态连接在一起,使整个机体运转起来,便称为对象的连接性。 易维护性: 由于对象的功能实现被“隐蔽”,所以修改、完善功能及其实现的细节都被局限于该对象的内部,不会涉及到外部。 面向对象程序设计相对于结构化程序设计的优越性表现在: 它有希望解决软件工程的两个主要问题—— 软件复杂性控制 和 软件生产率的提高 ,此外它还符合人类的思维习惯,能够自然地表现现实世界的实体和问题,对软件开发过程具有重要意义。 封装(Encapsulation) 基本思想: 是指将数据和与该数据有关的操作集合放在一起,形成一个能动的实体—对象,使其相互关系隐藏在内部,而对外仅仅表现为与其它封装体间的接口关系。 对象是按照封装的方法构造的与客观世界具体成分相对应的软件模块。用户不必知道对象行为的实现细节,只需根据对象提供的外部接口访问对象即可。 封装的目的是信息隐藏。 封装的优点在于: 在开发一个软件系统时,封装使得构造和组织系统更准确、方便,并且能减少重复的工作。 如果一个程序员把系统中最易变的部分封装起来,那么需求的变化对整体结构的影响就会非常小。 封装把相关的内容组织在一起,使不同部分间的通信减到最小。 继承(Inheritance): 继承所表达的是一种对象类之间的相交关系。它使得某类对象可以继承另外一类对象的特征和能力。 继承使得程序员对共同的属性及操作只需说明一次,减少了相似类的重复说明,并且在具体情况下可以扩展和细化 这些属性及操作。 若类间具有继承关系,则它们之间应具有下列几个特性: 类间具有共享特征(包括数据和程序代码的共享); 类间具有细微的差别; 类间具有层次结构; 继承实例1:

文档评论(0)

ozprb1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档