C++和C的联系:
C++是C语言的超集。
C++融合了3种不同的编程方式:C语言代表的过程性语言、C++在C语言基础上添加的类代表的面向对象语言、C++模板支持的泛型编程。
C++和C的区别:
1.面向特性
C是面向过程的语言,强调的是程序使用的过程性方法;C++是面向对象的语言,强调的是程序的数据方面,设计与问题的本质特性相对应的数据格式。
2.复合数据类型——类
C++存在类这种复合数据类型,而C没有类,C的struct结构与类相似,都可以存储多种类型的数据成员。但是在类中可以声明定义成员函数,而在struct中不能直接声明定义函数。
3.重载
C++支持重载,包括函数重载、模板重载、运算符重载。而C不支持重载。
4.动态管理内存
C使用malloc()、free()函数申请动态内存和释放内存;C++在C的基础上,添加使用new、delete运算符来请求分配和释放内存。
5.引用和指针
C++新增了一种复合类型——引用。而C没有引用类型。引用是已定义的变量的别名,而指针是变量的地址。