C/C++ 面试问题收集
2020-04-19 本文已影响0人
wiggins_wu
- vector的内存原理?数据会不会失效?
- new和malloc的区别?
- 静态局部变量存在哪个地方?静态局部变量的地址是编译时确定还是运行时确定?
- 多态和重载的区别?多态的原理?
- 虚函数指针放在对象的哪个地方?
- 堆/栈的区别?多线程堆/栈共享问题?
- 动态链接和静态链接的区别?动态库中有一个全局变量,在内存中存在几份?如何实现只存在一份的?如果有一个程序改变该变量的值,会发生什么?
- 从源文件到可执行文件的过程?各个阶段的具体工作?
- C++类型转换与区别?dynamic_cast是如何实现向下类型转换安全的?
- 深拷贝和浅拷贝?
- 析构函数为什么是虚的?
- static和const关键字
- GDB调试相关
- map底层实现?数据失效问题
- C++11相关特性,智能指针(shared_ptr、unique_ptr)
- 内存泄漏检测和避免(Valgrind使用)
- C++线程库相关
- 空类有哪些基本成员函数?
- std容器底层实现(vector、list、map等)
- extern关键字使用
- C++final关键字
- 右值引用和移动语义
- 指针和引用的区别
- struct和class的区别
- C++中的const类成员函数
- STL中unordered_map和map的区别
- vector push_back摊还分析,对性能的影响和原因
- 遇到coredump要怎么调试
- C++四种强制转换
- 对象复用的了解,零拷贝的了解
- 手写智能指针类
- 静态绑定和动态绑定
- 纯虚函数
- C++所有的构造函数
- C++内存管理
- define和const分别在时候编译,哪个更安全