Boost相关

来源:互联网 发布:淘宝上少女心爆棚的店 编辑:程序博客网 时间:2024/06/05 17:26

最近看到一个程序里用到了Boost库,《effective c++》中也推荐了Boost。将目前接触到的一些知识整理如下。

boost::shared_ptr
参考:http://www.cnblogs.com/TianFang/archive/2008/09/19/1294521.html
顾名思义,boost::shared_ptr是可以共享所有权的智能指针。
boost::shared_ptr的管理机制其实并不复杂,就是对所管理的对象进行了引用计数,当新增一个boost::shared_ptr对该对象进行管理时,就将该对象的引用计数加一;减少一个boost::shared_ptr对该对象进行管理时,就将该对象的引用计数减一,如果该对象的引用计数为0的时候,说明没有任何指针对其管理,才调用delete释放其所占的内存。


boost::regex
正则表达式


boost::noncopyable
用于单例的情况
class noncopyable的基本思想是把构造函数和析构函数设置protected权限,这样子类可以调用,但是外面的类不能调用,那么当子类需要定义构造函数的时候不至于通不过编译。但是最关键的是noncopyable把copy构造函数和copy赋值函数做成了private,这就意味着除非子类定义自己的copy构造和赋值函数,否则在子类没有定义的情况下,外面的调用者是不能够通过赋值和copy构造等手段来产生一个新的子类对象的。



0 0
原创粉丝点击