您的位置:首页 > 编程语言 > C语言/C++

C和C++的区别与总结

2015-04-19 15:52 225 查看
近期准备总结所学的进行巩固加深理解,有不对之处欢迎指正。

C和C++的关系:
C只面向过程 C++面向过程也面向对象

C与C++的关系:C是C++的子集 C++是从C上衍生来的,但C语言比C++运行更高效。

C语言与C++的区别:
1.全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。

2.C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都是有集成的很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合,是一个集体。但你也可能单独调用API。

3.特别是C++中的图形处理,它和语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在中C++中的。C语言标准中不包括图形处理。
4.C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成 员是公共的,什么想访问它的都可以访问;而在VC++中它没有加限定符的为私有的。C语言可以写很多方面的程序,但是C++可以写得更多更好, C++可以写基于 DOSr程序,写DLL,写控件,写系统。
5.C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分类明确。
6.C++中的IDE很智能,和VB一样,有的功能可能比VB还强。
7.C++对可以自动生成你想要的程序结构使你可以省了很多时间。有很多可用的工具如加入MFC中的类的时候,加入变量的时候等等。
8.C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。
9.调试功能强大,并且方法多样。

C++是一种类型要求更强的语言。就
void
*
而言,这一点表现得更加突出。C虽然不允许随便地把一个类型的指针指派给另一个类型,但允许通过
void *
来实现。
例如:

bird* b;
rock* r;
void* v;
v = r;
b = v;


C++不允许这样做,其编译器将会给出一个出错信息。如果真的想这样做,必须显式地使用映射,通知编译器和读者。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: