c++是面向过程还是面向对象的?

如题所述

C,fortran等较早的高级语言因为应用环境简单,系统规模较小采取的是面向过程的思路。
总体来说你首先思考的是该干什么,关键字是动词。比如起床、刷牙,吃饭,然后上班。

之后随着系统复杂性提高,C++,java等高级语言,采取了面向对象的思路。
总体来说你首先思考由谁去干,关键字是名词。比如我的生活。然后我具有一些属性,比如能够睡觉,能够清洁,需要饮食,需要工作。之后去调用。我.起床,我.刷牙。

你也可以看出来,这个过程并不是对立的。在面向对象的思路中依然会需要面向过程的思路解决局部问题。不过他可以更好地重用代码。

此外还有lisp等用于工业设计语言的功能型编程范式。究竟采取哪种范式来编程看你解决问题的规模和需求。
面向对象的特点是:封装,多态,继承。其中多态有分为重载和重写。面向对象的编程思想更加接近现实的事物。
有这样几点好处:
1、是编程更加容易。因为面向对象更接近于现实,所以你可以从现实的东西出发,进行适当的抽象。
2、在软件工程上,面向对象可以使工程更加模块化,实现更低的耦合和更高的内聚。
3、在设计模式上(似乎只有面向对象才设计到设计模式),面向对象可以更好的实现开-闭原则。也使代码更易阅读。

相对而言,面向过程的程序设计是面向对象程序设计的基础。面向对象的程序里面一定会有面向过程的程序片断的!
温馨提示:答案为网友推荐,仅供参考
相似回答