书籍推荐:
- 蓝色部分
- 只需要一个实参即可,因为有一个默认设定
- 没有关键字explicit
- exlicit这个关键字用的很少
- 一般用在构造函数的前面
- 上图中的reference使用的是设计模式中的代理方式
智能指针
- 智能指针听课的时候没怎么明白
- 没有智能指针,必须保证new对象能在正确的时机delete,智能指针能够保证自动释放内存对象
上面课程举例的shared_ptr,源自boost库,后被收录到C++11标准的TR1库中
上述的这篇博文
内存泄露
野指针
引用计数型的智能指针
#include<memory>
#include<iostream>
using namespace std;
int main(){
shared_ptr<int> spi(new int(1024));
cout<<"spi:"<<*spi<<'\n';
return 0;
}
cout<<"spi:"<<spi<<'\n';
用法