BOOST 编译过程比较复杂,目前为了学习 BOOST,首先得搭建BOOST 开发环境。本文中所描述的是在Windows2007的32位机下基于VS2013版本的搭建过程。
首先,请自行下载boost相关安装程序。如果是 32 位,下载 boost_1_55_0-msvc-12.0-32.exe;否则, boost_1_55_0-msvc-12.0-64.exe。随后安装相应的程序,程序安装过程较为简单不再赘述,其中安装的路径在后面配置VS2013时会用到。
然后,打开VS2013软件(如果没有,请自行安装)。创建一个空的命令行程序(相信这个大家都会的)。后面开始配置VS2013上的boost环境。这部分是重点,下面是图文步骤描述:
1.右击工程文件,选择“属性”项。
2.选择“配置属性”--- >“VC++目录”, 随后进入如下界面
注意:我这边是已经配置好的。
3.在“可执行文件目录”中输入你刚才安装的boost下的tools路径,我的是:D:\boost\boost_1_55_0\tools
说明:其中boost是我在安装前自己新建的文件夹。
在“包含目录”中输入你刚才安装boost的总目录,我的是:D:\boost\boost_1_55_0
在“库目录”中输入boost下lib的目录,我的是:D:\boost\boost_1_55_0\lib32-msvc-12.0
至此我们就配置好了VS2013下的boost环境,最后别忘了点“应用”和“确定”。新建一个cpp文件,就可以在里面导入boost的相关头文件进行操作了。
下面是一个简单的应用例子:
#include<iostream>
#include<string>
#include<boost/lexical_cast.hpp>//类型转换
#include<boost/timer.hpp>//时间操作
#include<boost/smart_ptr.hpp>//智能指针
using namespace std;
int main()
{
boost::timer t;//声明计时器对象,开始计时
/*不能被拷贝、赋值,只能在声明的作用域内使用*/
boost::scoped_ptr<string> pStr( new string("test"));//智能指针
cout << *pStr << endl;
//转换操作
inti = 8848;
stringmyStr = "2015";
i = boost::lexical_cast<int>(myStr);
cout << "使用boost转换后i:" << i <<endl;
//计时操作
cout << "max timespan:"<<t.elapsed_max() /3600<<"h"<<endl;//可度量的最大时间
cout << "min timespan:" << t.elapsed_min()<< "s" << endl;//可度量的最小时间
cout << "now time elapsed:"<<t.elapsed()<<"s"<<endl;//已流逝的时间
system("pause");
return0;
}
说明:boost中的头文件为hpp后缀。
运行结果如下:
此后就可以愉快地使用boost进行软件开发了!