C++面试之C与C++的区别和联系

本文详细对比了C与C++两种编程语言的主要区别,包括面向过程与面向对象的编程方式,C++新增的特性如封装性、多态性和内联函数等,以及在内存管理、头文件引用和语法上的不同。

C与C++的联系:从宏观上分析:

1、结合自身工作情况来看,觉得C++是C语言的扩展,可以说是超集的这样的概念,如果你具备了C的知识,那你在学习C++的时候应该会更快些,它们是处于交集关系的概念。

C与C++的区别:结合常用性上来分析:

一、宏观上分析:

也是可能面试的时候,回答的最多的一种就是C语言是面向过程的语言,而C++是面向对象的语言,C++拥有三大特性:继承性、封装性、多态性

二、大体细节上分析:

1、C语言中的封装性更多的使用struct(结构体),而在C++中封装性的使用是引入了新的概念class(类的使用

 具体类中的创建对象,访问机制的限制暂不介绍那么多了

2、在申请内存中,C语言更多的使用malloc和free,而在C++中更多的使用的是new和delete来进行内存的分配和创建对象。

3、头文件的引用,在C++中头文件的引用采用的是<iostream>,而在C语言中主要采用的头文件的引用是<stdio.h>

4、C++中引入了一个新的概念,就是引用,这边注意区分引用和指针的不同

5、C++中的三个特性之一多态性,引入了函数的重载,多态性的出现

 6、C++中引入新的概念,内联函数在头文件中直接进行定义

7、C++中引入命名空间的概念,使作用域的概念得到延伸,不光有局部,全局还有,命名空间作用域,以及类作用域

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值