C++里比C里多出了继承,多态,虚函数是啥回事?求通俗解答…………谢谢!

急……

C++是一门从C发展而来的编程语言,都是诞生于贝尔实验室,因此是一脉相承的关系。
既然是发展,那就要多了些东西以适应更加复杂的编程要求咯。

就好比你最早买的U盘是usb1.0的,后来有了usb2.0,现在是usb3.0,显然高版本的要比低版本的有更多的功能。同样的道理C++就比C语言多了一些功能(严格地说叫语言特性)。多出来的这部分内容有2大块,一个叫面向对象,也就是你说的封装、继承、多态;另外一部分叫泛型编程。

C++首先比C多出了类这个概念,你要先明白类是怎么回事。

接下来说继承,你老爸留下了一大笔遗产,你可以继承并发扬光大,取其精华,去其糟粕。
同理,别人写了一个C++的类A,你拿过来继承一下,得到属于你的类B,你的类B就有了别人的那部分功能,同时你再添的东西,于是类B把类A发扬光大了。
举个现实中的例子,比如我现在用的搜狗输入法具有换皮肤的功能,那么这个功能就是一个类A,过了一段时间,新来了一个哥们,他想开发一个定时自动换皮肤的功能,他不需要把搜狗输入法全部重新写一遍,他只要把原来的功能A继承过来,在里面添加一个自动换皮肤的函数,于是就得到了新的类B。现在好了,原本要重新写的程序,现在只要添点东西就OK,这不是节省了很多编程人员的精力了吗。所以说继承能够让你很快地用上别人的东西,同时添加自己的东西。

建议你看看 Head First 系列图书,里面有很多浅显易懂的例子,你就会对面向对象编程有很好的了解了。当然,这一系列的书都价格不菲。

Head First深入浅出设计模式
http://book.douban.com/subject/1488876/
Head First深入浅出面向对象分析与设计(中文版)
http://book.douban.com/subject/3530721/
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-03-24
这是因为两种语言的思想不同,c语言是面向过程的编程思想。c++是面向对象的编程语言。思想不同,故方法不同。
第2个回答  2012-03-23
这种问题在教材上就有
相似回答