博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++ Boost入门
阅读量:4707 次
发布时间:2019-06-10

本文共 1280 字,大约阅读时间需要 4 分钟。

  1、简介:

  Boost是一个同行评审、提供源代码、可移植的C++库。它可以与C++标准库完美地共同工作,并为其提供扩展功能。目前,有一部分Boost库已经被包含在C++标准委员会的程序库技术报告TR1中,并在即将到来的C++标准修订版本中加入。

  2、下载、安装:

  从http://www.boost.org/users/download/下载合适版本的压缩包(如boost_1_57_0.tar.gz) -> 解压为/usr/local/boost_1_57_0,并加一个软链boost指向它。

  大部分Boost库的使用只需包含相应头文件即可,少数(如coroutine、python、regex和thread)需要链接相应的二进制库(library binary)。这些库需要自己编译和安装:

cd /usr/local/boost # 参考./bootstrap.sh --help # --show-libraries显示那些需要编译(build)和安装步骤的库的集合# --with-libraries=list:list或取值"all",或指定要编译的库的集合,用逗号分割./bootstrap.sh --show-libraries --with-libraries=regex # 把头文件和已编译的库文件安装到指定路径(/usr/local/include/boost/和/usr/local/lib/等)./b2 install

  3、示例:

// example.cpp #include 
// ...int main(){ std::string line; boost::regex pat("^Subject: (Re: |Aw: )*(.*)"); while (std::cin) { std::getline(std::cin, line); boost::smatch matches; if (boost::regex_match(line, matches, pat)) { // matches[2]对应pat第2个括号内正则表达式匹配到的字符串,依此类推 std::cout << matches[2] << std::endl; } }}

  编译:g++ example.cpp  -I /usr/local/boost /usr/local/lib/libboost_regex.a。运行:

$ ./a.out Subject: Re: Re: Re: How To Build Boost?How To Build Boost?

 

 

 

  参考资料:

  http://www.boost.org/

 

不断学习中。。。

转载于:https://www.cnblogs.com/hanerfan/p/4333444.html

你可能感兴趣的文章
Spring事务
查看>>
java编程基础(三)流程控制语句
查看>>
让数据库跑的更快的7个MySQL优化建议
查看>>
jquery 取id模糊查询
查看>>
解决在vue中,自用mask模态框出来后,下层的元素依旧可以滑动的问题
查看>>
PAT甲级题解-1123. Is It a Complete AVL Tree (30)-AVL树+满二叉树
查看>>
SSH加固
查看>>
python 二维字典
查看>>
实验吧之【天下武功唯快不破】
查看>>
2019-3-25多线程的同步与互斥(互斥锁、条件变量、读写锁、自旋锁、信号量)...
查看>>
win7-64 mysql的安装
查看>>
dcm4chee 修改默认(0002,0013) ImplementationVersionName
查看>>
maven3在eclipse3.4.2中创建java web项目
查看>>
POJ 2378 Tree Cutting(树形DP,水)
查看>>
UVA 116 Unidirectional TSP (白书dp)
查看>>
cnblog!i'm coming!
查看>>
fatal: remote origin already exists.
查看>>
LeetCode 242. Valid Anagram
查看>>
JSP表单提交乱码
查看>>
如何适应现代雇佣关系
查看>>