- malloc calloc realloc new 区别
1 | malloc向系统申请一块未初始化的内存,申请失败返回NULL,申请成功返回指向该内存的指针 |
- new 避免分配错误抛出异常
1 | c++11 中 int *p = new(std::nothrow) int(4) 来避免抛出异常 |
- 使用delete 来释放delete[]内存泄漏问题
1 | 使用delete 来释放delete[] 是否有内存泄漏 取决于new 对象构造函数中是否存在内存分配 |
- 指针 引用 解引用 解地址
1 | 指针是变量,存储的是内存地址。可以进行修改 |
- 虚函数可以是inline函数吗?
1 | 虚函数在没有表现多态性的前提下可以是inline函数 |
- constexpr volatile
1 | constexpr变量 具有const 属性,在编译期求值 |
- static
1 | static全局变量:全局存储区(静态存储区),整个运行期间一直存在,未初始化的static全局变量会被初始化为0,只在定义该变量的文件中有效 |