1、下载boost最新版本,以1.85为示例:
Boost Downloads
2、解压boost文件至D:\boost_1_85_0
3、打开VS2022命令行(红色区域不要进错了!)
4、在命令行输入以下
5、输入bootstrap.bat后会自动生成b2.exe
6、待第5步完成,依次输入这两行命令(这里根据电脑硬件配置决定,通常3-10分钟完毕)
# 生成32位
b2 toolset=msvc-14.3 --build-type=complete architecture=x86 address-model=32 threading=multi link=static,shared variant=debug,release stage
# 生成64位
b2 toolset=msvc-14.3 --build-type=complete architecture=x86 address-model=64 threading=multi link=static,shared variant=debug,release stage
7、命令行参数注释(可不用理会)
toolset=msvc-14.3 指定了使用 Visual Studio 2017 编译器。
--build-type=complete 表示构建所有 Boost 组件。
architecture=x86 和 address-model=32 指定了生成 32 位架构的库。
architecture=x86 和 address-model=64 指定了生成 64 位架构的库。
threading=multi 表示多线程支持。
link=static,shared 表示同时生成静态库和动态库。
variant=debug,release 表示同时编译调试和发布版本。
8、在使用时候,VS中需要设置以下关键位置:
# 头文件目录
D:\boost_1_85_0;
# lib库目录
D:\boost_1_85_0\stage\lib;
9、上面的路径设好后,写一段测试代码试试:
#include <boost/lexical_cast.hpp>
#include <iostream>
using namespace std;
using namespace boost;
int main(){
double a = lexical_cast<double>("3.141592");
string str = lexical_cast<string>("3.141592");
cout << "This is a number: " << a << endl;
cout << "This is a string: " << str << endl;
int b = 0;
try {
b = lexical_cast<int>("xiaomi_su7");
}
catch (bad_lexical_cast& e) {
cout << e.what() << endl;
}
return 0;
}