boost::scoped_ptr虽然简单易用,但它不能共享所有权的特性却大大限制了其使用范围,而boost::shared_ptr可以解决这一局限。顾名思义,boost::shared_ptr是可以共享所有权的智能指针boost::shared_ptr的管理机制其实并不复杂,就是对所管理的对象进行...
分类:
其他好文 时间:
2014-09-24 00:23:55
阅读次数:
250
在我们的C++项目中安装boost库,下面以VS2010版本作为例子,其它版本的设置也差不多。一、编译生成boost库1.下载最新的boost(本人下载的是boost_1_56_0)。boost官方网站(www.boost.org)。2.解压boost库文件(我解压到C:boost目录下)。3.打开...
分类:
其他好文 时间:
2014-09-23 19:24:15
阅读次数:
211
io_service类
你应该已经发现大部分使用Boost.Asio编写的代码都会使用几个ios_service的实例。ios_service是这个库里面最重要的类;它负责和操作系统打交道,等待所有异步操作的结束,然后为每一个异步操作调用完成处理程序。...
分类:
编程语言 时间:
2014-09-23 10:22:54
阅读次数:
318
// boost.lambda表达式用法
// made by davidsu33
// 2014-9-22
#include "stdafx.h"
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using names...
分类:
其他好文 时间:
2014-09-23 02:51:33
阅读次数:
244
内存池可有效降低动态申请内存的次数,减少与内核态的交互,提升系统性能,减少内存碎片,增加内存空间使用率,避免内存泄漏的可能性,这么多的优点,没有理由不在系统中使用该技术。内存池分类:1、不定长内存池。典型的实现有apr_pool、obstack。优点是不需要为不同的数据类型创建不同的内存池,缺点是造...
分类:
其他好文 时间:
2014-09-23 01:54:23
阅读次数:
279
前几天程序新加一个功能之后,其中用到了boost的lexical_cast,发现在关闭命令行窗口的时候,程序报错,是程序退出清理时候报的错误。 一开始以为是程序新增的功能有问题,发现去除新功能之后,随便在一个函数中使用lexical_cast,程序在退出的时候都会报错。 所以怀疑是自己程序功...
分类:
其他好文 时间:
2014-09-22 19:30:03
阅读次数:
196
bind - boost头文件: boost/bind.hppbind是一组重载的函数模板.用来向一个函数(或函数对象)绑定某些参数.bind的返回值是一个函数对象.它的源文件太长了. 看不下去. 这里只记下它的用法:9.1 对于普通函数假如有函数 fun() 如下:void fun(int x, ...
分类:
其他好文 时间:
2014-09-22 15:56:42
阅读次数:
349
在上文中,我们了解了一种对时间进行处理的boost类,今天我们就来学习另一种时间处理的类——progress_timer,它继承于timer类,拥有timer类的功能,又在其易用性上更进一步,接下来我们以代码对该类进行说明:
#include
#include
int main()
{
boost::progress_timer pt1;
std::cout << pt1...
分类:
其他好文 时间:
2014-09-22 14:13:22
阅读次数:
135
异常处理VS错误代码
Boost.Asio允许同时使用异常处理或者错误代码,所有的异步函数都有抛出错误和返回错误码两种方式的重载。当函数抛出错误时,它经常抛出boost::system::system_error的错误。...
分类:
编程语言 时间:
2014-09-22 13:18:02
阅读次数:
303
对于时间与日期的处理一直都是一个比较复杂的问题,而C++中对于时间与日期的处理也是比较简陋的,并不像Java、C#之流提供了非常方便易用的类。但随着Boost的推出,对于时间的处理也变得越来越简单方便了,今天我们就来学习一些较为方便的处理方式:
首先,我们先来了解Boost中对时间处理的一个比较基础的类,也是后续几个类的基类——timer. timer类可以测量时间的流逝,依据平台的不同...
分类:
其他好文 时间:
2014-09-22 01:00:51
阅读次数:
215