【C++后台开发面经】面试总结第二波:C++面试题合集

本文总结了C++面试中常见的问题,包括C和C++的区别、多态、引用与指针的区别、内存管理、虚函数、构造函数、堆栈的区别等,深入探讨了面向对象的特性、内存错误对策、类型转换和数据结构等关键概念,旨在帮助开发者准备C++后台开发的面试。
摘要由CSDN通过智能技术生成

前言

     面试总结第二波,主要针对自己在看别人面经时,总结和C++面试相关的问题。

C++面试题合集

目录

C++面试题合集

1、C和C++的区别?

2、C++多态

3、引用和指针的区别?

4、函数中值传递、引用传递、指针传递有什么区别?

5、static关键字的作用

6、const关键字的作用

7、memset、memcpy、strcpy有什么区别?

8、析构函数有哪些特点?

9、虚函数的作用?

10、分别给出bool、int、float、指针变量和0比较的if语句

11、内联函数与普通函数有什么区别?

12、拷贝构造函数自动调用的情况

13、函数模板和函数重载异同?

14、C++中explicit关键字有什么作用?

15、C++中restrict关键字有什么作用?

16、面向对象的三大特征

17、在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”?

18、头文件中的ifndef/define/endif有什么作用?

19、为什么构造函数不能为虚函数?

20、堆和栈的区别?

21、malloc/free和new/delete的区别

22、常见的内存错误及对策

23、为什么要使用字节对齐

24、四种强制类型转换

25、C++中的内存分配

26、平衡二叉树和红黑树的区别

1、C和C++的区别?

  • C语言是面向过程的语言,面向过程即加工的是一个一个的函数;而C++是面向对象的语言,面向对象即加工的是一个一个的类。
  • C语言中,表达式的结果放在寄存器,是一个数;C++中,表达式返回的变量的本身。
  • C语言中const是一个冒牌货,是一个只读的变量,有自己的存储空间,通过指针可以修改;C++中const放在符号表中,当取地址时,会单独开辟一个内存空间(编译器编译期间)。
  • C++对C函数进行了扩展,一个是inline函数代替了宏代码,另一个是函数重载(名称相同,参数不一样)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烊萌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值