smart_ptr
raii ( Resource Acquisition Is Initialization )
智能指针系列的都统称为smart_ptr,包括c++98标准的auto_ptr
智能指针是一个类,通过重载->和*完成类似原始指针的操作。不过因为是类,所以可以做比如内存管理、线程安全之类的工作
智能指针均是自动管理内存,不需要显示调用delete
scoped_ptr...
分类:
其他好文 时间:
2016-03-26 07:59:56
阅读次数:
210
参考博客 http://www.cnblogs.com/lidabo/p/3805487.html http://www.cppblog.com/Robertxiao/archive/2013/01/06/197022.html http://www.cnblogs.com/finallyliuyu
分类:
其他好文 时间:
2016-03-23 00:51:45
阅读次数:
267
场景
正则表达式在处理非常量字符串查找,替换时能很省事,如果稍微复杂点的字符串匹配, 没有正则表达式还真做不出来.
C++11 为我们提供了正则表达式库. 使用起来比boost的正则库方便.
搞Java 的一定觉得很搞笑,这都是Java的标配功能, 怎么C++11才支持这个库,vs2010 以才支持.建议在处理字符串搜索替换时,直接用正则吧,代码量少,快速.
参考std::regex_replace...
分类:
编程语言 时间:
2016-03-21 15:23:56
阅读次数:
271
http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting-started-with-boostasio?pg=4 本章节为io_service添加任务,并且区分dispatch与post的区别.如果说io_service是asi
分类:
其他好文 时间:
2016-03-18 09:34:58
阅读次数:
224
客户端: void qt_boost::pbSendFileClicked(){ QString filename = ui.leFileName->text(); QByteArray ba = filename.toLatin1(); char * pfilename = ba.data();
分类:
其他好文 时间:
2016-03-18 01:53:00
阅读次数:
222
1、boost::unordered_map, 它与 stl::map的区别就是,stl::map是按照operator<比较判断元素是否相同,以及比较元素的大小,然后选择合适的位置插入到树中。所以,如果对map进行遍历(中序遍历)的话,输出的结果是有序的。顺序就是按照operator< 定义的大小
分类:
其他好文 时间:
2016-03-14 18:30:45
阅读次数:
127
http://www.gamedev.net/blog/950/entry-2249317-a-guide-to-getting-started-with-boostasio/ 编译环境 boost1.59 vs2015 A guide to getting started with boos
分类:
其他好文 时间:
2016-03-13 19:40:42
阅读次数:
223
Boost::Asio中的许多I/O对象是流导向的,这意味着; @没有消息边界,在传输的数据是一个连续的字节序列 @读或者写传输的字节可能比请求更小,这就是被称作简短的读或者写 提供流定向模型的对象一个或者多个下列类型的必要条件:SyncReadStream,使用成员函数read_some()执行同
分类:
其他好文 时间:
2016-03-13 17:39:37
阅读次数:
144
有的时候程序必须依赖第三方库来完成I/O操作,鉴于这种情况,Boost::Asio提供了一个null_buffers 类型可以同时完成读和写操作,null_buffers 直到执行I/O操作的对象就绪才返回。下面是一个执行非阻塞的读操作的例子ip::tcp::socket socket(my_io_
分类:
其他好文 时间:
2016-03-13 17:32:39
阅读次数:
117
线程安全一般的,高并发使用不同的对象是安全的,在高并发中使用单一的对象是不安全的,io_service类型提供了单对象高并发的强安全保证。线程池多线程可能调用io_service::run()来建立一个可以调用完成句柄的线程池,也可以使用io_service::post()把计算任务交给线程池处理。
分类:
编程语言 时间:
2016-03-12 22:59:13
阅读次数:
217