1、Boost简介
Boost的本质就是一个开源C++库,它包含多种功能强大的模块,如:字符串文本处理模块、容器、算法、多线程、智能指针、线程池等模块
2、Boost的下载和安装
(1)Boost下载
官网:http://www.boost.org/
SourceForge:C++ Boost Library在国内能够实现更快速的下载
window系统下载.zip或.7z;Linux系统下在.gz或.bz2
(2)Boost安装(Vistual Studio 2022)
由于本机安装的是VS2022,下载的boost版本是boost_1_86_0版本;下载解压后目录如下:
请确保你的Window系统安装了C++编译器,如MSVC(安装了Vistual Studio默认安装了MSVC编译器)、GCC(安装MinGW)等;然后双击bootstrap.bat(Linux下运行bootstrap.sh);这一阶段会构建Boost的系统环境,并生成一个b2.exe
运行b2.exe可执行文件,会自动生成两个目录到当前目录,它们分别是bin.v2和stage,其中bin.v2是生成的中间结果,可以直接删除,stage文件夹下包含编译生成的静态库
(3)在VS中配置Boost
配置包含目录
配置库文件
配置链接器的附加库目录
配置附加库目录的目的是:指定链接器在链接阶段查找库文件的搜索路径
(4)测试Boost库是否安装成功
#define BOOST_TIMER_ENABLE_DEPRECATED
#include <boost/timer.hpp>
#include <boost/progress.hpp>
#include <libs/date_time/src/gregorian/greg_names.hpp>
#include <libs/date_time/src/gregorian/greg_month.cpp>
#include <libs/date_time/src/gregorian/gregorian_types.cpp>
#include <boost/date_time/posix_time/posix_time.hpp>
void test_boost_install() {
boost::timer t;
boost::gregorian::date dt(1978, 12, 18); //date_time 库
assert(dt.year() == 1978);
assert(dt.day() == 18);
boost::gregorian::date::ymd_type ymd = dt.year_month_day();
std::cout << "\n" << ymd.year << "/" << ymd.month << "/" << ymd.day << " the day is "
<< dt.day_of_year() << " days of this year" << std::endl;
std::cout << boost::gregorian::to_iso_extended_string(dt) << std::endl; //转换为其他格式
std::cout << boost::gregorian::to_iso_string(dt) << std::endl;
std::cout << boost::gregorian::to_simple_string(dt) << std::endl << std::endl;
std::cout << t.elapsed() << "s" << std::endl; //程序运行时间
system("pause");
}
标签:boost,C++,Boost,dt,include,安装
From: https://blog.csdn.net/qq_42279379/article/details/142989074