在好例子网,分享、交流、成长!
您当前所在位置:首页C/C++ 开发实例Android手机应用开发 → boost_1_55_0.tar.gz

boost_1_55_0.tar.gz

Android手机应用开发

下载此实例
  • 开发语言:C/C++
  • 实例大小:66.26M
  • 下载次数:8
  • 浏览次数:188
  • 发布时间:2021-02-18
  • 实例类别:Android手机应用开发
  • 发 布 人:ahitc
  • 文件格式:.gz
  • 所需积分:2
 相关标签: Boost ST OS AR

实例介绍

Boost是一个功能强大、开源、跨平台、免费的c 程序库,被业界称为“准”c 标准库,能让你的c 开发更加简单,下面就开始下载安装Boost吧。 
1. 下载Boost 
这里选择Unix平台,下载最新的库:boost_1_54_0.tar.gz。 
解压安装包: 
tar -zxvf boost_1_54_0.tar.gz 
下面是boost1.54.0的根目录结构:

boost_1_54_0/ ……………..The “boost root directory” 
index.htm ………A copy of www.boost.org starts here 
boost/ …………………….All Boost Header files

libs/ …………Tests, .cpps, docs, etc., by library 
index.html ……..Library documentation starts here 
algorithm/ 
any/ 
array/ 
…more libraries… 
status/ …………………….Boost-wide test suite 
tools/ ………..Utilities, e.g. Boost.Build, quickbook, bcp 
more/ ……………………..Policy documents, etc. 
doc/ ……………A subset of all Boost library docs

所有的Boost头文件都以.hpp为后缀名,要详细的了解Boost各种库,可以打开libs/index.html文件。

很多Boost库,只需要包含它的头文件即可,头文件已经包含了模板和inline函数,不需要编译成二进制库文件。 
不过下面的这些库必须编译后才能使用。 
Boost.Chrono 
Boost.Context 
Boost.Filesystem 
Boost.GraphParallel 
Boost.IOStreams 
Boost.Locale 
Boost.MPI 
Boost.ProgramOptions 
Boost.Python (see the Boost.Python build documentation before building and installing it) 
Boost.Regex 
Boost.Serialization 
Boost.Signals 
Boost.System 
Boost.Thread 
Boost.Timer 
Boost.Wave 
下面这些库是可选的,只有你在使用某些特定功能时才需要先编译成二进制,具体哪些功能等碰到了再说,先简单了解就行。 
Boost.DateTime 
Boost.Graph 
Boost.Math 
Boost.Random 
Boost.Test 
Boost.Exception

先来实现一个简单的demo,只需要包含Boost相关头文件即可,不需要二进制库。 
创建一个example.cpp文件。

#include <boost/lambda/lambda.hpp> #include <iostream> #include <iterator> #include <algorithm> int main()
{  using namespace boost::lambda;  typedef std::istream_iterator<int> in;  std::for_each(in(std::cin), in(), std::cout << (_1 * 3) << " ");  std::cout << std::endl;
}

该程序很简单,它从标准输入中读取一些数字,然后每个数x3后再输出。 
编译:(-I表示指定#include头文件的目录,编译时会从该目录去查找) 
g -I ~/boost/boost_1_54_0/ ./example.cpp -o example 
运行: 
echo 1 2 3 | ./example 
输出: 
3 6 9

2. 编译安装Boost 
cd boost_1_54_0 
编译前需要配置,输入下面的命令: 
sudo ./bootstrap.sh 
配置后会提示你使用b2(老版本是使用bjam编译)编译,开始编译安装,这里选择完全安装,自定义安装以后再研究,先不浪费时间在这些细节上,输入命令: 
sudo ./b2 install 
编译安装完成后,会把boost头文件拷贝到/usr/local/include/目录下,库文件在/usr/local/lib/下。 
注意:编译安装boost前,得先安装gcc,使用sudo apt-get install build-essential即可。 
build-essential依赖于下面这些软件包,所以安装build-essential时,这些软件也会被安装,很方便。 
|Depends: libc6-dev 
Depends: libc6-dev 
Depends: gcc 
Depends: g  
Depends: make 
Depends: dpkg-dev

使用命令apt-cache depends build-essential可以查看依赖关系。 
再来实现一个简单的demo,需要链接二进制库文件。 
创建example2.cpp文件

  1. #include <boost/regex.hpp>
  2. #include <string>
  3. #include <iostream>
  4. int main()
  5. {
  6. std::string line;
  7. boost::regex pat("^Subject: (Re |Aw: )*(.*)");
  8. while(std::cin)
  9. {
  10. std::getline(std::cin, line);
  11. boost::smatch matches;
  12. if(boost::regex_match(line, matches, pat))
  13. {
  14. std::cout << matches[2] << std::endl;
  15. }
  16. }
  17. }

上面的程序使用了boost的正则表达式库,从标准输入中获取符合条件的信息,然后打印出来。创建一个test.txt文件作为输入内容,内容如下: 
m: Alex Zhou 
Subject: Will Success? 


标签: Boost ST OS AR

实例下载地址

boost_1_55_0.tar.gz

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警