C++高频考点(三)
1、基类与派生类的构造与析构顺序
A是基类,B继承A,C继承B,继承关系:A <-- B <-- C
- 构造函数调用顺序:A的构造函数、B的构造函数、C的构造函数
- 析构函数调用顺序:C的析构函数、B的析构函数、A的析构函数
2、new和malloc的区别
- new是运算符,malloc是函数。
- new申请内存需要指定数据类型,返回指定类型地址;malloc申请内存需要指定内存大小,返回void*,需要将它转换为需要的数据类型。
- new申请的内存会初始化并且会调用构造函数,malloc申请的内存不会初始化。
- new申请失败抛出bad_alloc类型的异常,malloc申请失败返回NULL。
- new申请的内存用delete/delete[]释放,malloc申请的内存用free释放。
3、delete和free的区别
- delete是运算符,free是函数。
- delete用来释放ne
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
嵌入式软件面试笔记 文章被收录于专栏
该笔记涵盖嵌入式软件工程师技术面试中的知识点,归纳总结为:C/C++、操作系统、计算机网络、数据结构与算法、linux常用命令等章节。