C++:Boost的安装和使用

news2025/1/9 20:41:37

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");

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2216843.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JAVA毕业设计】基于Vue和SpringBoot的医院电子病历管理系统

本文项目编号 T 008 &#xff0c;文末自助获取源码 \color{red}{T008&#xff0c;文末自助获取源码} T008&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 医…

股票分析软件设计

设计一个功能齐全的股票分析软件是一个复杂且有挑战性的项目&#xff0c;需要综合运用多种编程技术和金融知识。下面是一个总体设计思路和主要功能模块的概述&#xff1a; 主要功能模块&#xff1a; 1. 用户界面&#xff08;UI/UX&#xff09; - 显示K线图&#xff0c;并允许…

西门子变频器SINAMICS V20选型

SINAMICS V20共有五种外形尺寸可供选择&#xff0c;输出功率覆盖0.12kW-30kW&#xff1a; V20订货号 单相230V&#xff1a; 三相380V&#xff1a;

数据链中常见电磁干扰matlab仿真,对比噪声调频,线性调频,噪声,扫频,灵巧五种干扰模型

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 噪声调频干扰 4.2 线性调频干扰 4.3 噪声干扰 4.4 扫频干扰 4.5 灵巧干扰 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 2.算法运行软件版本 matlab2022a 3…

数据结构——单链表的基本操作

前言 介绍 &#x1f343;数据结构专区&#xff1a;数据结构 参考 该部分知识参考于《数据结构&#xff08;C语言版 第2版&#xff09;》29~36页 补充 后序代码中会遇见这个结构体 typedef struct LNode { ... }LNode,*LinkList; 对于这个代码&#xff0c;目的是定义线性表…

【云原生kubernetes系列--coredns篇】

1.corednsd的介绍 官网&#xff1a;https://coredns.io/ CoreDNS是一个灵活、可扩展的 DNS 服务器&#xff0c;可以充当 Kubernetes 集群 DNS。与 Kubernetes 一样&#xff0c;CoreDNS 项目由 CNCF coredns在K8S中的用途,主要是用作服务发现&#xff0c;也就是服务(应用)之间…

Python中 文件操作及与数据库的交互

在数据驱动的时代&#xff0c;Python不仅是一门强大的编程语言&#xff0c;更是与文件系统和数据库交互的重要工具。无论是读取配置文件、处理数据集&#xff0c;还是与数据库进行交互&#xff0c;Python都能轻松胜任。那么&#xff0c;如何高效地进行文件操作&#xff0c;并实…

uniapp 小程序0到1教程

先说明一下&#xff0c;uni-app的文档很乱 一、注册微信小程序 如果你还没有微信公众平台的账号&#xff0c;请先进入微信公众平台首页&#xff0c;点击 “立即注册” 按钮进行注册。注册的账号类型可以是订阅号、服务号、小程序以及企业微信&#xff0c;我们选择 “小程序”…

基本计算器 II

文章目录 题目解析解题小结 题目解析 给你一个字符串表达式 s &#xff0c;请你实现一个基本计算器来计算并返回它的值。 整数除法仅保留整数部分。 你可以假设给定的表达式总是有效的。所有中间结果将在 [-231, 231 - 1] 的范围内。 注意&#xff1a;不允许使用任何将字符…

lazyLoad

//1.通过React的lazy函数配合import()函数动态加载路由组件 > 路由组件代码会被分开打包 const Login lazy(()>import(/pages/Login)) //2.通过<Suspense>指定在加载得到路由打包文件前显示一个自定义loading界面 <Suspense fallback{<h1&…

Arduino配置ESP32环境

Arduino配置ESP32环境 引言一、IDE下载教程操作取巧方法 二、社区安装包三、官方手动安装 引言 最近入手了一款ESP32-C3的开发板&#xff0c;想继续沿用现有Arduino IDE&#xff0c;网上看了很多方法&#xff0c;大致分了三类&#xff1a;IDE下载、社区安装包、github手动配置…

法规标准-懂车帝智能化实测标准(2024版)

场景&#xff1a;AEB追尾静态假车 1.场地布置&#xff1a; ——测试选取封闭场地&#xff0c;试验路面应为水平、干燥&#xff0c;具有良好附着能力的混凝土沥青路面&#xff0c;附着系数在0.8以上 ——试验过程中&#xff0c;在试验道路两边3m以内或者静止目标车前方30m内不能…

简单掌握 Android Studio 模拟器

下载 Android Studio安装adb、配置 adb创建一个新的Activity项目创建模拟器 参考&#xff1a;mac系统下android studio创建手机模拟器adb命令使用&#xff0c;可在模拟器上安装app 打开终端 adb devices // 查询设备 adb install xx/xx/xx // 安装apk&#xff08;apk路径拖进…

Learning to Adapt to Light

Abstract 光适应或亮度校正是提高图像对比度和视觉吸引力的关键步骤。 有多种与光相关的任务&#xff08;例如&#xff0c;低光增强和曝光校正&#xff09;&#xff0c;之前的研究主要单独研究这些任务。 然而&#xff0c;考虑这些与光相关的任务是否可以通过统一的模型来执行…

扫雷(C 语言)

目录 一、游戏设计分析二、各个步骤的代码实现1. 游戏菜单界面的实现2. 游戏初始化3. 开始扫雷 三、完整代码四、总结 一、游戏设计分析 本次设计的扫雷游戏是展示一个 9 * 9 的棋盘&#xff0c;然后输入坐标进行判断&#xff0c;若是雷&#xff0c;则游戏结束&#xff0c;否则…

南京邮电大学电工电子A实验九译码器及其应用

文章目录 1 实验报告预览2 Word版本报告下载 1 实验报告预览 2 Word版本报告下载 点我

git push错误failed to push some refs to解决方法

主流解决方法网上全是&#xff0c;例如解决目标仓库和本地仓库的版本冲突&#xff1b;关闭”受保护的仓库“权限。 本文讲述一种 网上几乎没有文章会讲解的一种可能的解决方式&#xff1a; 问题描述&#xff1a; 解决方式&#xff1a; 取消勾选即可

【Cadence27】HDL拷贝工程➕Allegro导出DXF和3D文件STP

【转载】Cadence Design Entry HDL 使用教程 【Cadence01】Cadence PCB Edit相对延迟与绝对延迟的显示问题 【Cadence02】Allegro引脚焊盘Pin设置为透明 【Cadence03】cadence不小心删掉钢网层怎么办&#xff1f; 【Cadence04】一般情况下Allegro PCB设计时的约束规则设置&a…

python之socket网络编程

华子目录 引言什么是socketsocket套接字类型TCP和UDP socket服务端核心组件1.创建socket对象2.绑定地址和端口3.监听连接4.接受连接5.接受client端消息client_sock.revc(1024)6.发送响应给client端6.1client_sock.send()6.2client_sock.sendall() 7.关闭client端连接8.关闭serv…

【初阶数据结构】归并排序 - 分而治之的排序魔法

文章目录 前言1. 什么是归并排序&#xff1f;1.1 归并排序的步骤 2. 归并排序的代码实现2.1 归并排序代码的关键部分讲解2.1.1 利用递归2.1.2 将拆解的数组的元素放到一个临时空间中进行重新排序2.1.3 将在临时空间中排好的数组复制到目标数组中 3. 归并排序的非递归写法 前言 …