boost
工程师WWW
R
展开
-
boost bimap 学习笔记
bimap是boost中很重要的一个容器,可以进行双向的查找和替换,这样弥补了如果map和multimap需要找到data所对应的键值。循环遍历元素,才能找到相应的键值,再删除,最后替换的不足。但是boost的模板源编程又有着先天的缺点,就是编译错误不容易找到,编译时间有点长。但是如果长期使用boost,知道常见的错误,这个缺点还是可以慢慢克服的;虽然编译时间是有点长,但是比起自己一行一行原创 2012-02-24 14:50:05 · 5864 阅读 · 0 评论 -
在常规的编程任务中使用新的 <tuple> 库
作者:Danny Kalev原文出处:Tackle Common Programming Tasks Using the New Library摘要:Tuples 是大小固定的异构对象集合,它正在被添加到 C++ 标准。学习这种强大的数据类型有助于简化一些常规的编程任务。 C++ 标准委员会目前正在进行标准库的更新和增强。Tu原创 2012-03-08 20:57:23 · 1783 阅读 · 0 评论 -
以boost::function和boost:bind取代虚函数
这是一篇比较情绪化的blog,中心思想是“继承就像一条贼船,上去就下不来了”,而借助boost::function和boost::bind,大多数情况下,你都不用上贼船。boost::function和boost::bind已经纳入了std::tr1,这或许是C++0x最值得期待的功能,它将彻底改变C++库的设计方式,以及应用程序的编写方式。Scott Meyers的Effecti原创 2012-08-29 17:16:31 · 1393 阅读 · 0 评论 -
boost optional
optional: optional库使用"容器"语义,包装了"可能产生无效值"的对象,实现了"未初始化"的概念.#include using namespace boost;"无意义"的值: 函数并不总能返回有效的返回值,很多时候函数可能返回"无意义"的值,这不意味着函数执行失败,而是表明函数正确执行了,但结果却不是有用的值。 表示返回值无意义最常用的做法是增加一个"原创 2013-11-15 10:27:15 · 1402 阅读 · 0 评论