### VC++入门知识点详解 #### 一、面向对象编程概览 **面向对象**(Object-Oriented,简称OO)自90年代以来一直是软件工程领域的重要概念之一。面向对象编程的核心思想是将复杂的系统分解成一系列易于管理的对象,每个对象都包含数据和操作这些数据的方法。 **优点**: 1. **代码复用**:能够直接利用已经设计好的程序,避免重复开发。 2. **衍生新解决方案**:可以从现有的解决方案出发,通过少量的改动来适应新的需求。 3. **模块化设计**:构建一个由多个模块组成的系统,类似于组合家具或模块化房屋,这些模块可以根据需要轻松地添加或移除,而不影响整体结构。 **缺点**: - 面向对象设计的最大挑战之一是在初期阶段设计出足够通用的解决方案作为系统的基石。这要求设计者具备预见性和灵活性。 #### 二、C++与面向对象 **C++**是一种支持面向对象编程的语言,但也可以用于面向过程的编程。要充分利用C++的面向对象特性,开发者需要深入了解面向对象的设计原则,并在开发过程中应用这些原则。 **关键步骤**: - 在编写任何代码之前,深入思考系统的设计、基石以及期望从中衍生出的解决方案。 - 通过模块化和面向对象的方式组织代码,可以使C++的强大功能得到充分展现。 #### 三、抽象概念 **抽象**是面向对象设计中的核心思想之一。它指的是提取系统中最核心的特征,这些特征能够用来表示未来可能发生的所有情况的基础组件。尽管抽象是一个简单易懂的概念,但在实际设计系统时,往往会被忽视。 **应用案例**: - 本章通过一个复杂的电信系统设计案例,展示了如何将一个复杂的问题分解为更简单的组成部分,并通过模块化的方式进行构建和修改。 #### 四、设计一个电信系统 **目标**:设计一个能够实现两点之间通信的电信系统。 **复杂性分析**: - 直接连线:最简单的情况,即两个点之间存在直接连线。 - 通过中间节点:两个点之间的通信需要经过一个或多个中间节点。 - 路由选择:如果首选的通信路径不可用,系统需要能够智能地选择其他可用路径。 **设计问题**: 1. **如何建立连接**:无论是直接还是间接的连接,都需要能够建立起来。 2. **了解设备行为**:不同的设备具有不同的行为特征,系统需要能够识别这些特征以决定如何处理通信请求。 3. **备用路由选择**:当首选路由不可用时,系统应该能够自动选择备选路由。 #### 五、电讯系统的再思考 **进一步思考**:在设计电讯系统时,还需要考虑以下问题: - 如何高效地建立任意两点之间的连接? - 如何了解不同设备的行为特点以及这些设备能处理的连接类型? - 如果首选逻辑连接不可用,如何智能地选择备选设备? **简化策略**:为解决上述问题,可以通过定义不同对象的基本属性来进行简化处理,例如: - 定义“连接”对象,描述连接的起点和终点; - 定义“设备”对象,描述设备的类型及其能处理的连接类型; - 设计路由算法,根据当前网络状态智能选择最佳路径。 通过以上分析,我们可以看到面向对象编程不仅是一种编程范式,更是一种设计思维。在实际项目开发中,合理运用面向对象的设计原则能够显著提高代码质量和维护效率。
- bestabou_cv2014-10-16示例很全,很受用
- gupan862011-09-28比较全的VC学习示例,可以下载。
- beiyangshuishi0032011-10-17如果能结合实例,简单的实例就更好了
- 粉丝: 882
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助