boost 那些事

作为C++的一个开发者,字符串处理一直是C++标准库的弱项。

鄙人不喜欢造轮子,

boost::icontains :检测一个字符串是否包含另一个;

boost::iequal      :检测两个字符串是否相等;

boost::istart_with:检测一个字符串是否以另一个字符串为前缀

boost::iend_with :检测一个字符串是否以另一个字符串为后缀

boost::trim_left_copy_if   :根据条件判断删除左端字符

boost::trim_right_copy_if:根据条件判断删除右端字符

功能不仅仅这么多,这些只是鄙人经常使用的几个。

时间: 2024-08-08 01:16:24

boost 那些事的相关文章

VS2013安装Boost

boost的编译和使用,经过搜集资料和总结,记录成文.感谢文后所列参考资料的作者. 1 下载 地址:http://sourceforge.net/projects/boost/files/boost/1.56.0/ 可以选择 boost_1_56_0.7z 下载. 2 编译 2.1 生成boost的自用的编译工具bjam.exe 解压后,使用VS2013编译.首先打开“VS2013 开发人员命令提示”,cd 到boost解压后的根目录:E:\XXX\boost_1_56_0,执行bootstra

boost的property_tree组件

1.1 缘起 stl中对线性表有充分的实现,无论是vector还是list都是典型的线性表,即便是set和map,尽管实现上采用了诸如红黑树之类的树形结构,但那仅仅是为了快速检索的需要,从语义上来说它们依旧是线性表,无法表达目录树这种树形结构.boost中的property_tree可以看做是对树形结构实现的补充,我们大可把它扩展应用到各种需要树形结构的地方. 当我们拥有了一个树性结构以后,那么也就同时拥有了树形结构中的每个节点的访问权,很自然的,我们希望每个节点都可以方便的检索(类似于输入一个

boost::thread类

前言 标准C++线程即将到来.预言它将衍生自Boost线程库,现在让我们探索一下Boost线程库. 几年前,用多线程执行程序还是一件非比寻常的事.然而今天互联网应用服务程序普遍使用多线程来提高与多客户链接时的效率:为了达到最大的吞吐量,事务服务器在单独的线程上运行服务程序:GUI应用程序将那些费时,复杂的处理以线程的形式单独运行,以此来保证用户界面能够及时响应用户的操作.这样使用多线程的例子还有很多. 但是C++标准并没有涉及到多线程,这让程序员们开始怀疑是否可能写出多线程的C++程序.尽管不可

C++ 系列:Boost Thread 编程指南

转载自:http://www.cppblog.com/shaker/archive/2011/11/30/33583.html 作者: dozbC++ Boost Thread 编程指南0 前言1 创建线程2 互斥体3 条件变量4 线程局部存储5 仅运行一次的例程6 Boost线程库的未来7 参考资料:0 前言 标准C++线程即将到来.CUJ预言它将衍生自Boost线程库,现在就由Bill带领我们探索一下Boost线程库.就在几年前,用多线程执行程序还是一件非比寻常的事.然而今天互联网应用服务程

CART分类与回归树与GBDT(Gradient Boost Decision Tree)

一.CART分类与回归树 资料转载: http://dataunion.org/5771.html Classification And Regression Tree(CART)是决策树的一种,并且是非常重要的决策树,属于Top Ten Machine Learning Algorithm.顾名思义,CART算法既可以用于创建分类树(Classification Tree),也可以用于创建回归树(Regression Tree).模型树(Model Tree),两者在建树的过程稍有差异.CAR

Boost程序库完全开发指南——深入C++“准”标准库(第3版)

内容简介  · · · · · · Boost 是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库,有着“C++‘准’标准库”的美誉. Boost 由C++标准委员会部分成员所设立的Boost 社区开发并维护,使用了许多现代C++编程技术,内容涵盖字符串处理.正则表达式.容器与数据结构.并发编程.函数式编程.泛型编程.设计模式实现等许多领域,极大地丰富了C++的功能和表现力,能够使C++软件开发更加简捷.优雅.灵活和高效. <Boost程序库完全开发指南——深入C++“准”标准库(

boost.ASIO-可能是下一代C++标准的网络库

曾几何时,Boost中有一个Socket库,但后来没有了下文,C++社区一直在翘首盼望一个标准网络库的出现,网络上开源的网络库也有不少,例如Apache Portable Runtime就是比较著名的一个,也有像ACE这样重量级的网络框架.去年,Boost将ASIO纳入了自己的体系,由于Boost的影响力,ASIO有机会成为标准网络库.作者Chris Kohlhoff以ASIO为样本向C++标准委员会提交了一个网络库建议书,里面提到:ASIO的覆盖范围: Networking using TC

boost智能指针之shared_ptr和weak_ptr

std::auto_ptr很多的时候并不能满足我们的要求,比如auto_ptr不能用作STL容器的元素.boost的smart_ptr中提供了4种智能指针和2种智能指针数组来作为std::auto_ptr的补充. shared_ptr<boost/shared_ptr.hpp>:使用shared_ptr进行对象的生存期自动管理,使得分享资源所有权变得有效且安全. weak_ptr<boost/weak_ptr.hpp>:weak_ptr 是 shared_ptr 的观察员.它不会干

Boost.Asio c++ 网络编程翻译(28)

协程 Boost.Asio的作者在2009-2010年间实现了非常酷的一个部分,协程,它能让你更简单地设计你的异步应用. 它们可以让你同时享受同步和异步两个世界中最好的部分,这就是:异步编程但是很简单就能遵循流程控制,就好像应用是按流程实现的. 正常的流程已经在情形1种展示了,如果使用协程,你会尽可能的接近情形2. 简单来说,就是协程允许在一个方法中的指定位置存在入口来暂停和恢复运行. 如果你要使用协程,你需要只能在boost/libs/asio/example/http/server4目录下找