服务器之家

服务器之家 > 正文

vs2019+win10配置boost库的详细教程

时间:2021-09-10 12:36     来源/作者:不知道取什么呀

boost介绍

boost是一个准标准库,相当于STL的延续和扩充,它的设计理念和STL比较接近,都是利用泛型让复用达到最大化。不过对比STL,boost更加实用。  STL集中在算法部分,而boost包含了不少工具类,可以完成比较具体的工作。

Boost库是为C++语言标准库提供扩展的一些C++程序库的总称。Boost库由Boost社区组织开发、维护。其目的是为C++程序员提供免费、同行审查的、可移植的程序库。Boost库可以与C++标准库完美共同工作,并且为其提供扩展功能。Boost库使用Boost License来授权使用,根据该协议,商业的非商业的使用都是允许并鼓励的。

Boost社区建立的初衷之一就是为C++的标准化工作提供可供参考的实现,Boost社区的发起人Dawes本人就是C++标准委员会的成员之一。在Boost库的开发中,Boost社区也在这个方向上取得了丰硕的成果。在送审的C++标准库TR1中,有十个Boost库成为标准库的候选方案。在更新的TR2中,有更多的Boost库被加入到其中。从某种意义上来讲,Boost库成为具有实践意义的准标准库。

大部分boost库功能的使用只需包括相应头文件即可,少数(如正则表达式库,文件系统库等)需要链接库。里面有许多具有工业强度的库,如graph库。 

很多Boost中的库功能堪称对语言功能的扩展,其构造用尽精巧的手法,不要贸然的花费时间研读。Boost另外一面,比如Graph这样的库则是具有工业强度,结构良好,非常值得研读的精品代码,并且也可以放心的在产品代码中多多利用。

boost主要包含一下几个大类:字符串及文本处理、容器、迭代子(Iterator)、算法、函数对象和高阶编程、泛型编程、模板元编程、预处理元编程、并发编程、数学相关、纠错和测试、数据结构、输入/输出、跨语言支持、内存相关、语法分析、杂项。 有一些库是跨类别包含的,就是既属于这个类别又属于那个类别。

boost库:

Boost库是为C++语言标准库提供扩展的一些C++程序库的总称,由Boost社区组织开发、维护。Boost库可以与C++标准库完美共同工作,并且为其提供扩展功能。

一.下载boost库

直接去官网下载http://www.boost.org

vs2019+win10配置boost库的详细教程

中间位置有download点击。选择要下载的安装包。这里我用的是windows,选择的是boost_1_73_0.zip。linux可以选择后缀为tar.gz和其他的。

vs2019+win10配置boost库的详细教程

二.编译

下载好后,解压,得到文件目录如下图,找到其中的bootstrap.bat文件:

vs2019+win10配置boost库的详细教程

然后打开vs2019的命令行:这里选择64位或者32位的都可以。我选择的是x86_x64的。

vs2019+win10配置boost库的详细教程

vs2019+win10配置boost库的详细教程

然后切换到你解压到的路径。运行bootstrap.bat。

cd D:aboostoost_1_73_0
bootstrap.bat //运行

vs2019+win10配置boost库的详细教程

运行之后,查看boost_1_73_0下会多出几个文件。b2。运行b2.

vs2019+win10配置boost库的详细教程

这里运行的时间有点长,等待就行,最后运行成功之后会显示。

vs2019+win10配置boost库的详细教程

在使用boost库包含上面的文件夹与链接库。

三.测试boost

1.打开VS2019,新建一个空C++项目,并创建main.cpp 文件。点击项目的属性。

vs2019+win10配置boost库的详细教程

2.在vc++目录中包含目录添加boost路径D:aboostoost_1_73_0,库目录添加D:aboostoost_1_73_0stagelib。保存即可。

vs2019+win10配置boost库的详细教程

3.测试(以多线程并行排序为例)

#include <iostream>
#include <boost/sort/sort.hpp>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
 vector<int> arr;
 while (arr.size() < 100) arr.push_back(std::rand());
 boost::sort::block_indirect_sort(std::begin(arr), std::end(arr));
 for_each(std::begin(arr), std::end(arr), [](int& a) {
 cout << a << "	";
 });
 return 0;

}

这里运行注意要选择vs2019+win10配置boost库的详细教程,你之前命令行选择的版本,要不然boost不会包含在内,会出错。

总结

到此这篇关于vs2019+win10配置boost库的文章就介绍到这了,更多相关vs2019+win10配置boost库内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/buzhidao1/archive/2020/06/12/13099679.html

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部