一.配置boost

    1.下载boost库

      访问 Boost 官网,在导航栏点击 "Download" 进入下载页面。选择支持你Visual Studio 编译器版本的库的 Boost 库。否则编译不会成功!!!(我这里是VS2022 14.3,在官网里下载的是18.5版本。)如果不能科学上网的话,可以找镜像或者网盘资源。

    下载好后,解压到自定义的路径,点开文件夹,如下图,点击运行bat文件

运行完成后会出现b2.exe。
 

这时再使用终端打开,输入如下命令:

.\b2.exe install --toolset=msvc-14.3 --build-type=complete --prefix="D:\cppsoft\boost_1_85_0" link=static runtime-link=shared threading=mutil debug release

msvc-14.3是博主VS2022的编译器版本,这里再次强调一定要下载和自己编译器版本对应的boost库,不然这里不可能编译过!!!

prefix后跟的是编译完后所安装的文件路径,自定义选择想要安装的路径即可。安装时间可能有点长,基于自己电脑配置决定。

安装完成后,进入安装路径,可以看到如下两个文件夹

最好不要动文件层级,VS2022配置项目时可能找不到路径。博主也是卡了很久。。。。

打开VS2022,创建一个空项目,右键点击项目,选择属性,选择VC++目录,选择包含目录,添加编译好后的boost库文件夹下的include文件夹下的层级到boost文件夹这一层,如图:

如果你没有更改过编译后的文件夹层级,那么就应该和我一样,这里注意一定要只包含到这一层,不要进入到boost文件夹里!!!!不然你编译项目时lexical_cast.hpp就会一直报错,因为找不到上层目录,无法访问其同层级的hpp。

再选择库目录,引入和include同一层级的lib文件夹即可

配置完成后,我们跑段测试用例
 

#include <iostream>
#include <string>
// 核心Boost头文件(验证包含路径)
#include <boost/lexical_cast.hpp>
// 验证Boost异常模块(依赖config.hpp等基础头文件)
#include <boost/exception/all.hpp>

int main() {
    using namespace std;

    // 测试1:合法的数值→字符串转换
    int num = 2025;
    string num_str = boost::lexical_cast<string>(num);
    cout << "整数转字符串: " << num_str << endl;

    // 测试2:字符串→浮点数转换
    string pi_str = "3.1415926";
    double pi = boost::lexical_cast<double>(pi_str);
    cout << "字符串转浮点数: " << pi << endl;

    // 测试3:非法转换(验证Boost异常抛出)
    try {
        // 非数值字符串转整数,预期抛出异常
        string invalid_str = "abc123";
        int invalid_num = boost::lexical_cast<int>(invalid_str);
    } catch (const boost::bad_lexical_cast& e) {
        cout << "捕获到预期的Boost异常: " << e.what() << endl;
    }

    system("pause");
    return 0;
}

如果输出一下结果,那么恭喜你配置成功了:

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐