C++第六讲:从结构化到面向对象程序设计

需积分: 0 0 下载量 23 浏览量 更新于2024-08-24 收藏 410KB PPT 举报
"本章主要介绍了程序的概念,包括机器语言、汇编语言和高级语言的层次关系,接着详细阐述了结构化程序设计的思想和优缺点,并引出了面向对象程序设计作为解决结构化设计问题的一种方法,最后提到了面向对象的三大特性:封装、继承和多态。" 在计算机科学中,程序是实现特定功能的一系列指令。这些指令可以是低级的机器语言,由二进制0和1组成,直接被计算机硬件理解和执行。为了提高可读性和可编程性,人们发展了汇编语言,它使用助记符来代表机器指令,如ADD表示加法,SUB表示减法。然而,即使是汇编语言,对于人类来说仍不够友好,因此高级语言应运而生,如C++,它允许程序员使用接近自然语言的语法来编写程序,同时抽象掉机器细节,强调逻辑和数据的处理。 结构化程序设计是一种经典的编程范式,它提倡自顶向下的设计方法,即将大问题分解为小问题,每个小问题对应一个独立的模块。这些模块具有单一入口和单一出口,遵循顺序、选择和循环三种基本控制结构。结构化设计强调模块化,有助于程序的管理和维护。然而,随着软件复杂性的增加,结构化程序设计暴露了一些局限性,如程序的可维护性差、数据修改困难以及低重用性等问题。 为了解决这些问题,面向对象程序设计(OOP)被引入。OOP的核心思想是将数据和操作数据的方法封装在一起,形成对象。每个对象都有自己的状态(数据)和行为(方法),并且对象之间的交互构成了整个系统的运行。这样,数据和数据处理紧密结合,增强了代码的内聚性和数据安全性。OOP的三个关键特性是封装、继承和多态: - 封装:隐藏对象的内部细节,只对外提供接口进行交互,保护数据不被非法访问。 - 继承:子类可以继承父类的属性和方法,实现代码复用,减少冗余,同时也方便扩展。 - 多态:允许不同类型的对象对同一消息作出不同的响应,提高了灵活性和可扩展性。 通过面向对象的思维方式,开发者可以更好地模拟现实世界中的问题,提高软件的可维护性和适应性,以应对不断变化的需求。C++作为一门支持面向对象的编程语言,提供了丰富的工具和机制来实现这些概念,使得程序设计更加高效和灵活。