学起来有一点费劲…
安装
1 | git clone https://github.com/boostorg/boost --depth=1 --recursive |
时间与日期
timer
- 就一个秒表
progress_timer
- 析构的时候自动输出时间
progress_display
- 在控制台上显示程序执行进度
date_time
三个基本概念
- 时间点
- 时间段
- 时长
date_time库的日期基于格里高利历,支持1400-01-01到9999-12-31之间的日期计算
内存管理
RAII
- Resource Acquisition is Initialization
scoped_ptr
- 只能在一个作用域里使用的指针
- 不能拷贝,不能转让
unique_ptr
- 相比scoped_ptr,支持移动赋值。
shared_ptr
- 内部维护了引用计数,当计数为0时,释放资源
- 别名构造
- 共享引用计数,指向不同的对象
- 可用来避免使用成员变量时,对象已被释放?
weak_ptr
- 用来破除循环引用
- weak不增加引用计数,在使用时才转换为shared_ptr
特性
- 自定义字面值
参考文献
- Boost程序库完全开发指南 罗剑锋