摘要:bind - boost头文件: boost/bind.hppbind是一组重载的函数模板.用来向一个函数(或函数对象)绑定某些参数.bind的返回值是一个函数对象.它的源文件太长了. 看不下去. 这里只记下它的用法:9.1 对于普通函数假如有函数 fun() 如下:void fun(int x, ...
阅读全文
随笔分类 - Boost
摘要:今天拿起手要用C++写个小工具,从指定的目录递归遍历文件,然后做一下处理。又翻了一下boost的filesystem库。小结一下,希望能加深印象,免得下次又要查看文档。1. path对象就是一个跨平台的路径对象。有许多方法访问路径的各个部分,也用它的iterator迭代路径中的各个部分; path构...
阅读全文
摘要:Boost.Filesystem 库为对路径、文件和目录进行查询和操作提供了可移植的工具,已经被C++标准委员会接纳包含到TR2中。编译使用Boost.Filesystem 库之前要先编译它,请参考《Boost的编译》头文件#include 所有Boost.Filesystem库的内容都处于名空间b...
阅读全文
摘要:原帖:https://tokyo.zxproxy.com/browse.php?u=uG7kXsFlW1ZmaxKEvCzu8HrCJ0bXIAddA1s5dtIUZ%2FYzM1u9JI7jjKLTXvXJlIqeavUo1Ak%3D&b=6如果要在 C++ 裡對特定的檔案做存取,其實透過 STL...
阅读全文
摘要:[cpp]view plaincopy#include#include#includeusingnamespacestd;usingnamespaceboost::program_options;intmain(intargc,char*argv[]){stringone;//外部变量存储参数one...
阅读全文
摘要:一直认为boost都是hpp直接调用就可以了,最近遇到两个例子都不是这样的一个是boost的thread,另外一个就是这个了,boost在编译好之后会有库文件的,注意不是在当前的libs下面,而是stage/libs下面,我们在使用这个模块的时候要加上相应的动态或者静态的库。当我们写一些小程序的时候...
阅读全文
摘要:程式執行參數處理函式庫:Boost Program Options(2/N)前一篇已經大致解釋了 Boost Program Options 基本上的使用方法。而這一篇,則來細講一下選項描述(options_description)的進一步設定方法吧~在上一篇裡,基本上是示範了兩種最簡單的方法:bO...
阅读全文
摘要:程式執行參數處理函式庫:Boost Program Options(1/N)一般程式寫得大一點、或是需要比較有彈性,通常都需要在程式執行的時候,從外部讀取一些參數,來做為內部的設定值。一般來說,比較常見的方法,大概就是直接透過命令提示字元(command line)來下參數,或是透過讀取設定檔(例如...
阅读全文
摘要:介绍程序参数项(program options)是一系列name=value对,program_options 允许程序开发者获得通过命令行(command line)和配置文件(config file)获取这些参数项。为什么需要这样一个库?为什么比你手工写代码分解命令行参数要好?使用更容易。定义参...
阅读全文
摘要:1. mutex对象类mutex类主要有两种:独占式与共享式的互斥量。▲ 独占式互斥量:mutex: 独占式的互斥量,是最简单最常用的一种互斥量类型try_mutex: 它是mutex的同义词,为了与兼容以前的版本而提供timed_mutex: 它也是独占式的互斥量,但提供超时锁定功能▲ 递归式互斥...
阅读全文
摘要:Boost.DateTime库提供了时间日期相关的计算、格式化、转换、输入输出等等功能,为C++的编程提供了便利。不过它有如下特点:1. Boost.DateTime 只支持1400年以后的任何Gregorian日历日期。如果你需要计算再早的日期,则需要寻求其他库来支持。日期和时间是编程过程中常用的...
阅读全文
摘要:本篇紧接着boost上篇叙述Boost::DateTime的时间处理。在C++中,常见的时间有time_t, FILETIME和tm,而boost中用ptime。构造ptime1.ptime的构造函数有四种:1: using namespace boost::posix_time;2: ...
阅读全文
摘要:Q: 那个auto_ptr是什么东东啊?为什么没有auto_array?A: 哦,auto_ptr是一个很简单的资源封装类,是在头文件中定义的。它使用“资源分配即初始化”技术来保证资源在发生异常时也能被安全释放(“exception safety”)。一个auto_ptr封装了一个指针,也可以被当作...
阅读全文
摘要:boost中提供了几种智能指针方法:scoped_ptr shared_ptr intrusive_ptr weak_ptr,而标准库中提供的智能指针为auto_ptr.这其中,我最喜欢,使用最多的是shared_ptr,也最让人随心所欲.使用很简单,如下:头文件 class A{virtual v...
阅读全文
摘要:条款1:不要把一个原生指针给多个shared_ptr管理int* ptr = new int;shared_ptr p1(ptr);shared_ptr p2(ptr); //logic errorptr对象被删除了2次这种问题比喻成“二龙治水”,在原生指针中也同样可能发生。条款2:不要把this指...
阅读全文
摘要:boost 循环缓冲区[cpp]view plaincopy#includeint_tmain(intargc,_TCHAR*argv[]){boost::circular_buffercb(3);//Insertsomeelementsintothebuffer.cb.push_back(1);c...
阅读全文
摘要:boost::property_tree读取解析.xml文件1)read_xml 支持中文路径 boost::property_tree::wptree wpt; std::locale::global(std::locale("")); boost::property_tree::xml_pars...
阅读全文
摘要:boost::property_tree读取解析ini文件[cpp]view plaincopy#include"stdafx.h"#include#include#includeintmain(){boost::property_tree::ptreept;boost::property_tree...
阅读全文
摘要:1、实现多线程方法:其实就是多个线程同时调用io_service::run for (int i = 0; i != m_nThreads; ++i) { boost::shared_ptr pTh(new boost::thread( boost::bind(&...
阅读全文
摘要:一、命令行解析tprogram_options解析命令行参数示例代码:[cpp]view plaincopy#includeusingnamespacestd;#includenamespacepo=boost::program_options;intmain(intargc,char*argv[]...
阅读全文