3. C++ 基础
常考面试题
-
你怎么理解C语言和C++的区别?⭐⭐⭐⭐⭐
- C语言是C++的子集,C++可以很好兼容C语言。但是C++又有很多新特性,如引用、智能指针、auto变量等。
- C++是面向对象的编程语言,C++引入了新的数据类型——类,由此引申出了三大特性:(1)封装。(2)继承。(3)多态。而C语言则是面向过程的编程语言。
- C语言有一些不安全的语言特性,如指针使用的潜在危险、强制转换的不确定性、内存泄露等。而C++对此增加了不少新特性来改善安全性,如const常量、引用、cast转换、智能指针、try—catch等等;
- C++可复用性高,C++引入了模板的概念,后面在此基础上,实现了方便开发的标准模板库STL(Standard Template Library)。STL的一个重要特点是数据结构和算法的分离,其体现了泛型化程序设计的思想。C++的STL库相对于C语言的函数库更灵活、更通用。
-
简述下C++语言的特点⭐⭐⭐⭐⭐