Boost库是一个跨平台、开源并且完全免费的C++程序库。
c++98标准把stl纳入c++,1998年,Boost社区也建立,目的是为了向C++程序员提供免费的、同行审查的、可移植的高质量C++源程序库。最新的c++11标准,已经把Boost库中的很多内容如智能指针等并入了c++标准库。
Boost库把C++类的声明和实现都放在了一个文件中,后缀名是 .hpp,首先是为了与普通的C头文件区分,另一个很重要的原因就是使Boost库不需要预先编译,直接引入工程即可编译链接,方便库的使用,还有一个原因是C++编译器的限制,许多编译器尚不支持C++标准提出的模板的分离编译模式(export 关键字),而Boost中大量使用了模板,为了保持与各个编译器的兼容,故采用 .hpp 的头文件形式。
STL只是C++标准制定的一个规范,各个编译器或厂家可能有不同的实现,比如SGISTL、STLport,这里推荐STLport,它有高度可移植性,性能优秀,继承自以高效闻名的SGISTL,另外在标准之外,增加了若干有用的扩展,如 rope(增强的字符串类)、slist(单链表数据结构)、hash_map(散列映射容器),以及支持线程安全。
本书以 VS2005 + Boost + STLport 为基本环境。
学习BOOST,请经常去 上看看。