[C++面试]C与C++(面向过程与面向对象)区别

综述

C是一门结构化语言,重点在于数据结构与算法,侧重于对于输入进行运算得到输出(面向过程)。而C++考虑的是构造一个对象模型,通过获取对象的方法和属性来得到输出(面向对象)。

面向对象与面向程序

1. 区别

  • 面向对象:将问题拆解成多个步骤,通过一个一个步骤调用解决问题

  • 面向对象:将问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个问题中的行为

2. 例子

以五子棋为例:

  • 面向过程:开始游戏-白子先走-更新棋盘-判断输赢-黑子执棋-更新棋盘-判断输赢,然后不停重复直至分出胜负

  • 面向对象:设计出玩家(包括黑白双方)、棋盘(保存棋盘状态信息)和裁判(判定输赢)等对象

3. 优缺点

类别 优点 缺点
面向过程 性能高 不如面向对象易维护、易复用和易扩展
面向对象 易维护、易复用和易扩展 具有封装、继承和多态等特性,可以设计出高内聚低耦合的系统 性能差:类调用时需要实例化,消耗一定的资源

Reference

[1] https://blog.csdn.net/tonglin12138/article/details/94555183

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 面向过程与面向对象编程的区别 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候...
    Artifacts阅读 159评论 0 0
  • 一、面向对象与面向过程的区别面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一...
    就叫苗逗逗阅读 283评论 0 1
  • 面向对象与面向过程的区别 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个...
    闽南小吃阅读 286评论 0 0
  • 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向...
    何鹏辉阅读 91评论 0 0
  • 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向...
    王鹏辉阅读 133评论 0 1