- 博客(7)
- 资源 (11)
- 收藏
- 关注
原创 pool库概述
pool库概述: boost.pool库基于简单分隔存储思想实现了一个快速,紧凑的内存池库,不仅能够管理大量的对象,还可以被用做STL的内存分配器。某种程度上讲,它近似于一个小型的垃圾回收机制,在需要大量地分配/释放小对象时很有效率,而且完全不需要考虑delete. pool库包含四个组成部分:最简单的pool,分配类实例的object_pool,单件内存池singleton_pool和可
2012-10-31 16:48:26 2786
原创 智能指针 intrusive_ptr
intrusive_ptr: intrusive_ptr是一个侵入式的引用计数型指针,它可以用于以下两种情形: 【1】对内存占用的要求非常严格,要求必须与原始指针一样; 【2】现存代码已经有了引用计数机制管理的对象。
2012-10-19 17:40:03 1516
原创 智能指针 weak_ptr
weak_ptr: weak_ptr是为了配合shared_ptr而引入的一种智能指针,它更像是shared_ptr的一个助手而不是智能指针,因为它不具有普通指针的行为,没有重载operator*和->,它的最大作用在于协助shared_ptr工作,像旁观者那样观测资源的使用情况. 用法: weak_ptr被设计为与shared_ptr共同工作,可以从一个shared_ptr或者另一个w
2012-10-19 17:39:20 28856 2
原创 智能指针 shared_array
shared_array shared_array类似shared_ptr,它包装了new[]操作符在堆上分配的动态数组,同样使用引用计数机制为动态数组提供了一个代理,可以在程序的生命周期里长期存在,直到没有任何引用后才释放内存。 shared_array的接口与功能几乎是与shared_ptr是相同的,主要区别如下: 【1】构造函数接受的指针p必须是new[]的结果,而不能使new表
2012-10-18 17:59:55 1962
原创 智能指针 shared_ptr
shared_ptr: shared_ptr是一个最像指针的"智能指针". shared_ptr与scoped_ptr一样包装了new操作符在堆上分配的动态对象,但它实现的是引用计数型的智能指针,可以被自由的拷贝和赋值,在任意的地方共享它,当没有代码使用(引用计数为0)它时才能删除被包装的动态分配的对象。shared_ptr也可以安全地放到标准容器中,并弥补了auto_ptr因为转移语义而
2012-10-18 16:52:29 16529 1
原创 智能指针 scoped_array
scoped_array: scoped_array的接口和功能几乎是与scoped_ptr是相同的(甚至还有少),主要特点如下: 【1】构造函数接受的指针p必须是new[]的结果,而不能使new表达式的结果; 【2】没有*,->操作符重载,因为scoped_array持有的不是一个普通指针; 【3】析构函数使用delete[]释放资源,而不是delete; 【4】提供oper
2012-10-18 16:51:00 2182
原创 智能指针 scoped_ptr
scoped_ptr: scoped_ptr是一个类似auto_ptr的智能指针,它包装了new操作符在堆上分配的动态对象,能够保证动态创建的对象在任何时候都可以被正确的删除。 特征:scoped_ptr的所有权不能转让。 操作函数: scoped_ptr的构造函数接受一个类型为T*的指针p,创建出一个scoped_ptr对象, 并在内部保存指针参数p,p必须是一个new表达式动态
2012-10-18 16:49:45 1248
网络拨号程序同步方式网络拨号程序简单类 可以参考 自己学着写
2009-08-20
详解卷TCP-IP详解卷1
2009-08-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人