当前位置: 首页C++面试题问题详情 【C++基础部分】学过 C 吗?你觉得 C 和 C++ 这两门语言有什么区别呢? 本问题对应文章链接:C++常见面试题整理 回答说明:从面向过程+效率/开发效率+各自的应用场景等说明,就是主要说出自己的理解吧。
共以下 2 个回答
new了内存分配delete操作符和内存释放操作符;C提供malloc()并calloc()用于动态存储器分配的功能,并free()为存储器解除分配。学过C语言。首先说明最关键的点:C语言是一门面向过程的编程语言,而C++是一门面向对象的编程语言。在C语言中,我们并没有较多的对一些“事物”进行抽象和封装,而是将注意力放在解决问题的步骤和过程上,这就是面向过程;而C++编程更加注重了对于对象的抽象和封装。
虽然说C++是在C语言上的基础上扩展而来的,但是我们要知道C++并不只是C with class这么简单,C++还提供了很多很好使用的特性,比如模板、异常处理、标准库以及一些面向对象的一些属性(封装、继承、多态)。
在使用的效率上来讲,C与C++在效率上相对于其他语言可能高效。对比两者来说,开发效率主要取决于使用的场景,一般来说C++提供的特性较多,开发效率也会相对较高。
对于应用场景,C语言主要用于系统级编程或者是与硬件有耦合关系的场景中,包括底层操作系统的场景、嵌入式的场景。C++则由于功能强大,领域更加丰富,游戏开发、服务端编程、框架编程,在大型项目和复杂系统的开发中更为常见。