一、智能指针
tr1::shared_ptr和tr1::weak_ptr。前者的作用有如内置指针,但会记录有多少个tr::shared_ptrs共同指向同一个对象,这便是所谓的引用计数。一旦最后一个这样的指针被销毁,也就是一旦某一个对象的引用计数为0,这个对象会被自动删除。这在非环形数据结构中防止资源泄露很有帮助,但如果两个或多个对象内含tr1::shared_ptrs并形成环状,...
分类:
其他好文 时间:
2014-07-06 11:43:58
阅读次数:
186
#include
#include
#include
#include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP() //为了注册新的数据类型
using namespace std;
namespace ex{ //定义新的数据类型
struct demo_class
{
int a,b;
};
BOOST_TYPEOF_REG...
分类:
其他好文 时间:
2014-07-04 06:53:55
阅读次数:
323
以下知识点转自:点击打开原文链接
今天拿起手要用C++写个小工具,从指定的目录递归遍历文件,然后做一下处理。又翻了一下boost的filesystem库。小结一下,希望能加深印象,免得下次又要查看文档。
1. path对象就是一个跨平台的路径对象。有许多方法访问路径的各个部分,也用它的iterator迭代路径中的各个部分;
path构造目录结构的时候使用“/”运算符,非常直...
分类:
其他好文 时间:
2014-07-02 07:06:26
阅读次数:
413
如下的代码,虽然使用了智能指针 shared_ptr , 但是还是可能泄漏资源。
processWidget(shared_ptr(new Widget), priority());
上述函数有两个参数,第一个是 shared_ptr, 第二个是纯粹是 priority()函数的调用。
调用时,编译器必须创建代码,包括如下三件事情:
调用 priority执行 new Widg...
分类:
其他好文 时间:
2014-07-02 07:01:57
阅读次数:
180
#include #include #include #include class semaphore{unsigned int count_;boost::mutex mutex_;boost::condition_variable condition_;public:explicit sema....
分类:
其他好文 时间:
2014-07-01 22:03:34
阅读次数:
474
boost::scoped_ptr和std::auto_ptr非常类似,是一个简单的智能指针,它能够保证在离开作用域后对象被自动释放。上一段代码,以及其输出: 1 #include 2 #include 3 #include 4 5 class implementation 6 { 7 pu...
分类:
其他好文 时间:
2014-07-01 18:58:19
阅读次数:
261
boost开发文档中实时聊天程序的客户端(加入了详细注释 方便理解)...
分类:
其他好文 时间:
2014-07-01 15:11:08
阅读次数:
233
前面已经学习过auto_ptr,这里补充另外一种智能指针,比auto_ptr要更强力更通用的shared_ptr。 shared_ptr 简介及使用选择 几乎所有的程序都需要某种形式的引用计数智能指针,这种指针让我们不再需要为两个对象或更多对象共享的对象的生命周期而编写复杂的逻辑(写起来有点绕口)....
分类:
其他好文 时间:
2014-07-01 13:25:27
阅读次数:
217
0 0 0 0 1 0 0 0
1 0 0 0 0 0 0 0
0 0 0 1 0 1 F 0
0 1 0 1 0 0 0 0
0 0 0 1 0 0 0 0
0 S 0 1 0 0 1 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 0
namespace matrix
{...
分类:
其他好文 时间:
2014-07-01 07:14:32
阅读次数:
221