解释面向对象的三大特性
封装,继承,多态解释类的访问权限 public/protected/private
解释类的构造函数/析构函数/赋值函数/拷贝函数
移动构造与拷贝构造的区别
深拷贝与浅拷贝的区别
空类有哪些函数?空类的大小
解释内存分区:全局区、堆区、栈区、常量区、代码区
C++与C的区别
struct 与 class 的区别
struct 内存对齐和补齐
new/delete 与 malloc/free 的区别
内存泄漏的情况
sizeof 与 strlen 对比
指针与引用的区别
野指针产生与避免
动态多态与静态多态
虚函数实现动态多态的原理、虚函数与村虚函数的区别
继承时,父类析构函数是否为虚函数?构造函数能不能为虚函数,为什么?
静态多态:重写,重载,模板
static 关键字:修饰局部变量、全局变量、类中成员变量、类中成员函数
extern 关键字:修饰全局变量
const 关键字:修饰变量、指针、类对象、类成员函数
volatile 关键字:避免编译器指令优化
四种类型转换 static_cast, dynamic_cast, const_cast, reinterpret_cast
右值引用
std::move 函数与 std::forward 的区别
四种智能指针及底层实现 auto_ptr, unique_ptr, shared_ptr, weak_ptr
shared_ptr 中循环引用怎么解决
weak_ptrvector 与 list 区别
map 与 unordered_map 区别
set 与 unordered_set 区别
vector 迭代器失效的情况
STL 容器空间配置器