2009-11-19 58 views
6

我刚刚在C++中做了一个简单操作的项目,然后当我几乎完成了这个项目,我发现所有这些愚蠢的任务只需要一部分提升。这非常令人沮丧,让我想知道有多少这些烦人的问题可以通过boost库的单个函数来解决。提升备忘单

所以问题是,有没有提升库的备忘单?我的意思是,我可以马上说出来,我应该看看这部分的推动力来解决问题。大多数情况下,出现在提示的main page中的描述甚至不能解释它的意图,或者特别针对不使用所有这些C++特定单词的人。

+0

书本形式的完整参考可能是最好的,是否有一个?不幸的是,推动力持续不断,因此这本书可能很快就会过时,至少在一些图书馆里是这样。 – 2009-11-19 19:15:30

+0

如果您可以告诉我们“需要一部分提升”的操作,这可能会缩小搜索范围。 Boost非常全面。 – Fox 2009-11-19 19:20:31

回答

11

我个人找到Boost Libraries页是容易比加速的main page导航。

那个Boost Libraries页面是我最近意识到的一张备忘单。除此之外,我可以推荐的所有内容都是定期浏览Boost文档,帮助您开始项目新领域的工作;当你看到如何将它们的功能应用到你的项目中时,以及你学习更多C++来看看类型特征等C++特有功能如何能够使你受益,你以前认为几乎不需要的库将开始变得有意义。

您也可以尝试Beyond the C++ Standard Library: An Introduction to Boost。我没有读过它。

+0

Boost简介是一本好书,但它更像是一本“书”而不是“备忘单”。 – 2009-11-19 20:38:05

+0

+1为BtCSL,我已阅读它。 – MSalters 2009-11-20 09:02:10

+0

优秀的书。绝对值得一读。 – Ferruccio 2010-03-14 13:17:10

4

那么,看图书馆清单herehere是我如何熟悉提升。只需点击鼠标左键,即可了解图书馆可以完成的工作。那么如果你需要某些东西,你可能会记得功能在增强。

我想你也可以尝试在site with Google上搜索你想要用于特定问题的关键字。

在写完代码后丢掉代码很难做到,但要做的是正确的事情。巧合的是,我昨天问了一个问题,在实现了整个事情之后,有人发现它在提升。我只是源代码控制它,然后删除它。把它看成是一个学习的过程:)

1

我已经使用了很多Boost库,并且很难跟踪其中的所有内容。有几个启发式我用来看看是否值得检查 Boost Libraries页面。

problem我有许多C++开发人员可能拥有的一个?有没有其他编程语言可以很容易地解决这个问题? Boost开发人员喜欢修复C++的缺陷。 problem是否涉及大量的重复编码?问题涉及到math

即使如此,仍有可能错失任何东西。我读了一些代码,很好地利用了type traits,但有很多重复的代码可以通过 operators library消除。我问作者为什么他不使用它,他说:“我还没有知道它。”像任何事情一样学习Boost库是一个渐进的过程。

0

我同意,你试图解决的问题已经不是很明显。
SO中的许多问题都提到了提升的答案,所以对我来说,SO已经是某种作弊工具(虽然不是传统意义上的)。
不要忘记,这并不是因为某种东西在助力,它自然是解决您的问题的最佳解决方案。

5

在我看来,有三种不同类型的升压库:

  1. 像模板元编程库库(升压:: MPL)引入了一个全新的概念(新的门外汉)到C++编程。一旦你理解了这个概念,你可能会遇到很多不同的情况,你本能地认为“这可以用MPL完成,我只需要弄清楚如何”几个库很容易理解和可以经常使用:boost :: function,boost :: bind,迭代器库,boost范围和运算符等等。他们让熟悉的事情变得容易得多,正如其他海报所说的那样,减少了对重复代码的需求。

  2. 然后,有很多库满足了Java长期以来使用的大量标准库的需求:使用boost :: spirit的分析器生成,图库,异步输入和输出等。可以发现这些库一次一个。在你出去实现你自己的语言解析器之前,你一定要看看这里:-)