Tag Archives: boost

C++ Boost/tr1 Regex(正则表达式)快速指南

正则表达式自Boost 1.18推出,目前已经成为C++11(tr1)的标准部分。

本文以Boost 1.39正则表达式为基础,应该广泛适用于其他版本的Boost。对namespace稍加修改,即可适用tr1标准。
0、regex对象
类似于Java中的Pattern,Boost中的正则表达式对象为:

boost::regex

常见构造方法2种:
// 1. 直接使用正则表达式的字符串构造。
boost::regex reg1("\\d{18}");[......]

继续阅读

C++ Boost智能指针(smart_ptr)快速指南

智能指针(smart_ptr)是Boost各组件中,应用最为广泛的一个。

重所周知,C++没有提供Java中的垃圾回收机制。因此,在堆上申请的内存,需要自行回收,这就很容易导致内存泄漏。虽然STL提供了auto_ptr,但是受限太多(例如,不能放到容器中。。。),因此很少有人使用。

Boost从很早就提供了如下的智能指针,并且功能一直保持稳定:

  • scoped_ptr:不可拷贝,承载new。
  • scoped_array:不可拷贝,承载new []。
  • shared_ptr:[......]

    继续阅读

【转载】vc6下安装stlport和boost库

之前分别写了这两个库的编译,发现写得不好,有很多错误,大有误人之嫌,所以利用今天的时间重新整理一下。
首先介绍如何编译STLport5.1.3:
1 下载解压缩。
2 进入命令行。首先到vc98\bin\目录下执行vcvars32.bat。
3 进入stlport目录下的\build\lib\目录。执行configure.bat -c msvc6。这里如果将-c 改为icl,就可以用intel的icc进行编译。
4 执行nmake /fmsvc.mak install就开始编译了。[......]

继续阅读

KFS系统的编译、调试

KFS是一个分布式文件系统(Cloud Store)
安装/调试KFS步骤

0、安装g++

一定要使用g++ 4.2版本(或者4.3)
sudo apt-get install g++-4.2
然后在/usr/bin下用ln把g++链接到 g++-4.2上!

1、安装Boost
需要手动安装
去Boost.org上下载1.4.0
./bootstrap.sh //会生成bjam
./bjam -sTOOLS=gcc --without-python install[......]

继续阅读