一、Boost库
Boost库是一个准标准库,相当于STL的延续和扩充,它的设计理念和STL比较接近,都是利用泛型让复用达到最大化。不过对比STL,boost更加实用。STL集中在算法部分,而boost包含了不少工具类,可以完成比较具体的工作。
Boost主要包含一下几个大类:字符串及文本处理、容器、迭代子(Iterator)、算法、函数对象和高阶编程、泛型编程、模板元编程、预处理元编程、并发编程、数学相关、纠错和测试、数据结构、输入/输出、跨语言支持、内存相关、语法分析、杂项。 有一些库是跨类别包含的,就是既属于这个类别又属于那个类别。
Boost库大部分组件不需要编译,直接包含头文件即可。例如,如果要使用boost::tribool,只需要在C++源文件中添加如下include语句即可。例如:include <boost/logic/tribool.hpp>。
Boost库的文件与我们平常使用的头文件不同,这正是Boost的独特之处。它把C++类的声明和实现都放在一个文件里,而不是分成两个文件,也就是“.h+.cpp“,故文件的后缀是.hpp。剩下的库必须编译成静态库或者动态库才能使用。
二、学习使用Boost库
刚开始使用Boost库开发时,遇到问题就网上搜索,每次感觉一知半解。很快我意识到自己犯了低级错误,应该多用源信息(即官方文档)。所以以后学习什么库,都先看看官方文档。当然我觉得《The Boost C++ Libraries》这本书也不错。下面是这些资料的链接:
- 官方文档 https://www.boost.org/
- 《The Boost C++ Libraries 2nd Edition》 https://theboostcpplibraries.com/
- 《The Boost C++ Libraries(中文版)》http://zh.highscore.de/cpp/boost/frontpage.html
Boost库作为C++的准标准库,涵盖了从字符串处理到并发编程等广泛领域,其设计理念与STL相似,但更注重实用性。本文介绍了Boost库的主要组成部分,并推荐了官方文档和书籍资源,帮助读者更好地学习和使用Boost库。

5039

被折叠的 条评论
为什么被折叠?



