C++语言与C的区别和联系
有关C语言与C++的区别,请参考下表 -
序号 | C语言 | C++语言 |
---|---|---|
1 | C语言遵循程序性风格编程。 | C++是多范式。 它支持程序和面向对象。 |
2 | C语言中的数据的安全性较低。 | 在C++中,您可以对类成员使用修饰符,以使其对外部用户不可访问。 |
3 | C语言遵循自上而下的方法。 | C++遵循自下而上的方法。 |
4 | C语言不支持函数重载。 | C++支持函数重载。 |
5 | 在C语言中,不能在结构中使用函数。 | 在C++中,可以在结构中使用函数。 |
6 | C语言不支持引用变量。 | C++支持引用变量。 |
7 | 在C语言中,scanf()和printf()主要用于输入/输出。 | C++主要使用流cin和cout来执行输入和输出操作。 |
8 | 在C语言中操作符不可能重载 | 在C++中操作符重载是可以的。 |
9 | C语言程序分为程序和模块 | C++程序分为函数和类。 |
10 | C语言不提供命名空间的功能。 | C++支持命名空间的特性。 |
11 | 在C语言中异常处理不容易。它必须使用其他函数执行。 | C++使用Try和Catch块提供异常处理。 |
C/C++的联系:
C++是C的超集,兼容大部分C的语法的结构;
联系嘛我只能想到这个,毕竟cplusplus嘛!
C/C++区别:
第一点就应该想到C是面向过程的语言,而C++是面向对象的语言,一般简历上第一条都是熟悉C/C++基本语法,了解C++面向对象思想,那么,请问什么是面向对象?
C和C++动态管理内存的方法不一样,C是使用malloc/free函数,而C++除此之外还有new/delete关键字;(关于malooc/free与new/delete的不同又可以说一大堆,最后的扩展_1部分列出十大区别);
接下来就不得不谈到C中的struct和C++的类,C++的类是C所没有的,但是C中的struct是可以在C++中正常使用的,并且C++对struct进行了进一步的扩展,使struct在C++中可以和class一样当做类使用,而唯一和class不同的地方在于struct的成员默认访问修饰符是public,而class默认的是private;
C++支持函数重载,而C不支持函数重载,而C++支持重载的依仗就在于C++的名字修饰与C不同,例如在C++中函数int fun(int ,int)经过名字修饰之后变为 _fun_int_int ,而C是
_fun,一般是这样的,所以C++才会支持不同的参数调用不同的函数;
C++中有引用,而C没有;这样就不得不提一下引用和指针的区别(文后扩展_2);
当然还有C++全部变量的默认链接属性是外链接,而C是内连接;
C 中用const修饰的变量不可以用在定义数组时的大小,但是C++用const修饰的变量可以(如果不进行&,解引用的操作的话,是存放在符号表的,不开辟内存);
当然还有局部变量的声明规则不同,多态,C++特有输入输出流之类的,很多,下面就不再列出来了。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创优秀实例教程
转载请注明:文章转载自:代码驿站 [http:/www.codeinn.net]
本文标题:C++语言与C的区别和联系
本文地址:http://www.codeinn.net/cplus/1682.html