C++面试题集合(持续更新)

C++面试中常被问到的几个知识点:

1. 基本概念

多态是什么,C++通过什么实现的多态。虚函数是什么,纯虚类是什么。重载是什么,重写是什么。重载运算符怎么写。new和malloc有什么区别。公有继承和私有继承分别是什么,继承后的权限是怎样的。

2. C++ 11 相关

什么是左值引用和右值引用,有什么区别。移动构造是什么,和拷贝构造有什么区别。

3. 网络相关

TCP/UDP是什么,有什么区别,属于网络结构中的哪一层。socket怎样实现,建立socket的步骤是什么。TCP和UDP在socket建立时使用的宏定义是什么。

4. 进程间通信

进程间通信的方法有什么。

5. 多线程

C++怎样建立多线程。

6. 调试相关

可以通过什么软件进行C++的debug。dump文件是什么,怎样用。

7. 内存泄漏

 什么是内存泄漏,内存泄漏是怎样造成的。有什么工具能检查内存泄漏。

8. STL容器

容器都有哪些,有什么区别。底层实现原理是什么。

9. 设计模式

常见设计模式有哪些。怎样实现。

参考资料:

1. C++ 面试100题

2. C++面试(来自github)

3. 拷贝构造函数与移动构造函数 

4. C++11多线程 

5. TCP与UDP的区别 

6. Socket开发中的问题 

7. 重载new和delete 

8. linux下的内存泄漏检测工具 

9. core dump的配置和启动方法 

10. gdb的基本用法 

原文地址:https://www.cnblogs.com/qyit/p/12034582.html