记录2:2.5笔试
1. C++写一个简易的计算器
2. TCP/IP 协议分层及理解
:https://blog.csdn.net/weixin_53695360/article/details/124585802
3. 对象构造和析构顺序
first: 调用父类的构造函数
second: 调用成员变量的构造函数(调用顺序与声明顺序相同)
finally: 调用类自身的构造函数
**** 析构函数与对应的构造函数的调用顺序相反
4. new malloc 的区别
4.1 new 是操作符 malloc 是库函数
4.2 new在调用时会先为对象分配内存,再调用构造函数, malloc不会
4.3 malloc 为对象指针分配内存时,要明确指定分配内存的大小,而new不需要
4.4 new作为操作符可以被重载 而malloc 不可以
4.5 new分配内存成功返回对象指针 malloc返回 void* 类型指针
4.6 new分配失败 会抛出异常bad-alloc malloc 则会返回空指针
4.7 new从自由存储区为对象分配内存 ; malloc 从堆区分配内存
自由存储区是C++为new操作符抽象出的概念,使用new分配出的区域就是自由存储区。而在物理意义的内存 上,自由存储区可以在堆也可以在其他地方(比如静态存储区),这取决于编译器从哪里为new的使用分配存。
: https://blog.csdn.net/ymhdt/article/details/125991187
5. 深拷贝以及浅拷贝的区别
牛客面试宝典
6. 堆栈的区别
牛客面试宝典
7. TCP UDP的区别
https://www.codecomeon.com/posts/7/
8.TCP 三次握手
面试宝典 计网
补充: