【C/C++】C语言和C++的区别 | 面向过程与面向对象

创作不易,本篇文章如果帮助到了你,还请点赞 关注支持一下♡>𖥦<)!!
主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!
🔥c++系列专栏:C/C++零基础到精通 🔥

给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ

在这里插入图片描述

c语言内容💖:

专栏:c语言之路重点知识整合

【c语言】全部知识点总结


一、C语言

C语言采用了一种有序的编程方法——结构化编程

就是将一个大型程序分解为一个个小型的、易于编写模块,所有的模块有序的调动起来形成了一个程序的完整的运行链。
这种结构化编程反映出来过程性编程的思想,即C语言是一门面向过程的语言,更注重程序实现逻辑、怎么更好、更快、更直接的完成某功能

C语言是种面向过程编程的语言,在编写大型项目时,并不利于程序的复用性、扩展性,导致了在后期维护时带来了很多繁琐的工作,面临巨大挑战。

----》》

针对于此,OOP (Obiect-Oriented Programming)的概念诞生了,与结构化编程不同的是,OOP更注重数据,让语言来满足问题的需求,设计出与问题本质特性相对应的数据格式。

它与结构化编程不同,强调数据的重要性,并设计相应的数据格式来解决问题。
OOP的编程思想是将问题看作是由许多相互关联的对象组成的
每个对象拥有自己的属性和行为,可以与其他对象交互完成任务

C语言作为一门古老但经典的编程语言,拥有简洁、高效、底层等优秀特性

虽然不如C++那么具有面向对象编程的特性,但在许多领域仍然扮演着重要的角色,是必须掌握的基础知识之一。
在这里插入图片描述

OOD (Object-Oriented Design) :面向对象的设计

OOA (Object-Oriented Analysis): 面向对象的分析


二、C++

C++ 是一门面向对象编程的语言,把问题分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为,更注重的是程序的整体设计

方便程序后期维护、优化和管理,让一个功能尽可能的通用。

面向对象编程只有一个价值:应对需求的变化,本意是要处理大型复杂系统的设计和实现

OOP语言提供了构建对象的机制,将问题分解为可的部分,从而更好地满足问题的需求。


关于C++的用途

  • C++是一门强类型语言,需要进行显式类型声明并支持运算符重载、多态等高级特性;

  • C++支持指针和引用,灵活处理内存管理和数据传递

  • C++具有较好的可移植性和跨平台性,可以编写高效的系统和底层代码

  • C++广泛应用于游戏开发、图形界面设计、嵌入式系统、科学计算、金融工程等领域

  • C++也是许多大型软件系统和框架的基础语言,如OpenGL、Qt、Boost等

在这里插入图片描述


三、面向过程与面向对象

面向过程和面向对象,其本质还是在其设计思想上的区别!

面向过程

优点性能比面向对象高,比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能是最重要的因素。

缺点:没有面向对象易维护、易复用、易扩展

在这里插入图片描述
面向对象的优缺点与面向过程相对

面向对象

优点易维护、易复用、易扩展,由于面向对象有封装、继承、多态的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护

缺点:因为类调用时需要实例化,开销比较大,比较消耗资源,性能比面向过程低。

在这里插入图片描述


C++是由C衍生出来的一门语言,不但兼容包含了C语言还增加了一些新特性:函数重载,类、继承、多态,支持泛型编程 (模板函数、模板类),强大的STL库等…

封装、继承、多态

面向对象的三大特性:封装、继承、多态

封装

通过将数据和方法存储在类中,隐藏了实现细节,使得代码更加清晰和安全

继承

允许通过继承基类,从而建立更丰富的类层次结构和代码复用机制

多态

使用基类指针或引用来调用派生类方法,实现运行时的动态绑定和更好的可扩展性

STL(标准模板库)提供了泛型算法和数据结构,大大提升了C++语言的表达能力和灵活性。


在这里插入图片描述

大家的点赞、收藏、关注将是我更新的最大动力! 欢迎留言或私信建议或问题。
大家的支持和反馈对我来说意义重大,我会继续不断努力提供有价值的内容!如果本文哪里有错误的地方还请大家多多指出(●'◡'●)
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天喜Studio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值