提升备忘单

时间:2009-11-19 19:09:40

标签: c++ boost

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

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

5 个答案:

答案 0 :(得分:11)

我个人认为Boost Libraries页面 比Boost的main page更容易导航。

Boost Libraries页面是我对备忘单最近的了解。除此之外,我可以推荐的是在你开始研究项目的新领域时定期浏览Boost文档;当你看到如何将他们的功能应用到你的项目中时,你以前认为不需要的库将开始变得有意义,并且当你学习更多C ++以了解C ++特有的特性如类型特征如何使你受益时。

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

答案 1 :(得分:5)

在我看来,有三种不同的增强库:

  1. 像模板元编程库(boost :: mpl)这样的库为c ++编程引入了一个全新的概念(对于初学者来说是新的)。一旦你理解了这个概念,你可能会遇到很多不同的情况,你本能地认为“这可能是用MPL完成的,我只需要弄清楚如何”

  2. 一些库很容易理解,可以经常使用:boost :: function,boost :: bind,迭代器库,boost范围和运算符等等。他们让熟悉的事情变得更容易,而其他海报也说减少了对重复代码的需求。

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

答案 2 :(得分:4)

好吧,查看图书馆列表herehere是我如何熟悉自我。只需单击每个,这样您就可以大致了解库可以执行的操作。然后,如果你需要某些东西,你可能会记得功能正在提升。

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

编写代码后丢弃代码很难做到,但这是正确的做法。巧合的是,昨天我问了一个问题,在实施了整个事情之后,有人发现了它。我只是控制它,然后删除它。把它想象成一个学习练习:)

答案 3 :(得分:1)

我经常使用Boost库,很难跟踪其中的所有内容。我使用了一些启发式方法来查看是否值得查看 Boost Libraries 页面。

problem我是否拥有许多C ++开发人员可能拥有的?是否有另一种编程语言可以轻松解决这个 problem? Boost开发人员喜欢修复C ++的缺点。 problem是否涉及大量重复编码?问题是否涉及math

即便如此,也有可能错过一些东西。我阅读了一些充分利用type traits的代码,但有许多重复代码可以被 operators library消除。我问作者为什么不使用它,他说“我还没有了解它。”像任何东西一样学习Boost库是一个渐进的过程。

答案 4 :(得分:0)

我同意,你试图解决的问题已经在提升中并不总是显而易见的 SO中的许多问题都有关于提升的答案,所以对我而言,SO一直是某种备忘单(尽管不是传统意义上的)。
不要忘记,这不是因为有些东西在推动,它自然是解决问题的最佳方案。