1. 熟练使用 C++ 开发,熟悉 STL,Boost 库,熟练使用 GDB 调试,熟练使用 perf 分析程序性能瓶颈进行优化。
2. 了解文件IO操作、多线程和并发编程(如POSIX线程或C++11/14/17标准中的线程库)、网络编程(如套接字编程,理解TCP/IP协议栈的基本原理,使用socket API进行客户端/服务器端开发)等。
3.合理使用内存和分配,有效避免内存泄漏和悬挂指针,合理设计逻辑之间的依赖关系。
4. 解进程、线程、同步互斥、信号量、文件系统、虚拟内存等操作系统基本概念,能针对操作系统特性进行高效的程序设计。
5. 熟练使用 vscode 和 GCC 进行开发和调试。掌握版本控制系统如Git,以及自动化构建工具如Makefile、CMake等。
6. 熟悉并了解编译原理。
1. 最近做的一个项目,利用 boost serialize 库对大型项目进行序列化, 该项目需要深入了解程序数据之间的依赖关系,并处理好指针之间的依赖关系。
2. 设计过内存池线程池等框架。
C++ 常用的工具接口,用于提升个人的开发敏捷性。 C++ 常用的工具接口,用于提升个人的开发敏捷性。
C++ 实用的 工具,用于C++快速且敏捷的开发。 C++ 实用的 工具,用于C++快速且敏捷的开发。