C++基础学习:从结构化到面向对象

需积分: 18 8 下载量 176 浏览量 更新于2024-07-15 收藏 2.75MB PDF 举报
“C++基础课程讲义.pdf”涵盖了C++编程的基础知识,包括面向过程的结构化程序设计方法,以及C++对C语言的扩展,通过实例展示了如何使用结构化和面向对象的方法来求解实际问题,如计算圆的周长和面积。 在程序设计中,面向过程是一种常见的方法,它基于自顶向下、逐步求精的设计思路。这种设计方式首先从整体着眼,将大的问题分解为一系列小的、独立的模块,每个模块负责特定的功能。在C++中,这些模块通常表现为函数或子程序。每个模块内部由顺序、选择(条件判断)和循环三种基本结构组成,使得代码逻辑清晰,易于理解和维护。然而,面向过程编程的一个缺点是数据和处理数据的过程往往紧密耦合,导致可重用性较差,数据安全性不高,并且在开发大型软件或图形用户界面时显得力不从心。 C++对C语言进行了扩展,引入了面向对象编程的概念。面向对象编程(OOP)的核心是类和对象,它强调数据和操作数据的方法应该封装在一起,形成了所谓的“数据抽象”。在类中,数据被定义为成员变量,而操作数据的函数被称为成员函数。这样,数据结构的改变不会直接影响到处理过程,增强了代码的适应性和可维护性。在C++中,我们可以创建类并实例化对象,对象可以直接访问其所属类的成员变量和成员函数,从而实现数据的隐藏和保护。 例如,上述讲义中的圆的计算问题,如果采用面向过程的方法,我们需要分别定义输入、计算和输出的函数,数据(半径)和计算(周长、面积)的过程是分开的。而在面向对象的方法中,我们创建了一个`Circle`类,包含了半径(radius)作为成员变量,以及设置和获取半径、周长和面积的成员函数。这样,数据和操作都封装在类中,提高了代码的组织性和复用性。 C++结合了面向过程和面向对象的特性,提供了一种强大的编程工具,既支持传统的结构化编程,也支持现代的面向对象编程。通过学习C++的基础,可以深入理解这两种编程范式,为解决更复杂的问题打下坚实的基础。