我很想学习Boost。但我想问:
为什么我很想知道Boost是很多人在IRC的频道和StackOverflow中谈论Boost。
答案 0 :(得分:36)
我认为任何认真考虑将C ++开发视为职业生涯的人都应该学习Boost,并学好它。一旦你进入认真的编程,你就会意识到这些库有多么有益,它们可以让你有多高效。它们不仅是跨平台的,而且一旦你进入大数据处理数据,数学库尤其会像上面的礼物一样。
答案 1 :(得分:13)
作为一名游戏开发者,我对有多少人不了解Boost感到震惊。我已经向各种游戏工作室的联系人提到过它,不仅经常不使用它(许可或移植它是一个问题吗?)但很多人甚至没有听说过它。这使我相信,从职业角度来看,学习Boost实际上并不重要,但从个人发展的角度来看,这绝对是至关重要的。 :)
答案 2 :(得分:8)
答案 3 :(得分:6)
对于任何先决条件,您应该熟悉STL,并且模板的一些经验不会受到伤害。我总是惊讶于有多少C ++程序员实际上没有使用STL或模板。
答案 4 :(得分:4)
这一点非常重要,尤其是当Boost的许多库都进入C ++标准时 - 通过使用Boost,您可以早期了解标准的外观(shared_ptr
,任何人?)。
此外,即使你不使用它们,Boost库写得非常好,而且看起来很有意思;他们做了一些非常先进的C ++。
答案 5 :(得分:4)
我觉得提升是如此提高生产力,我认为我不会接受C ++商店不使用boost的工作。
答案 6 :(得分:3)
语言是一种工具。如果它可以帮助你完成某些事情,请使用它。
我对这些宗教感到厌烦。 “我应该使用Boost吗?如果我不使用Boost,这是否意味着我不是真正的C ++程序员?其他C ++程序员会不会喜欢我?”请。任何关心你使用Boost或任何其他库的C ++程序员都是一个心胸狭窄的混蛋,你应该与他无关。
相反,找一个聪明,思想开明的人,可以告诉你Boost和谁知道什么是其他图书馆在他自己的工作中帮助了他。他甚至承认有时候你不需要这些图书馆。
替代回答:自己重新实现Boost或STL的一部分是保持编程能力敏锐的好方法。换句话说,一个C ++程序员由于没有他的库而不能回到C是一个弱的程序员。
答案 7 :(得分:2)
Boost拥有丰富的库,你可以免费获得它。知道什么是boost中可用的库,以便你可以在需要时使用它。关于学习,选择c +中包含的库+ 0X以便您可以使用它,很快编译器就会支持它。关于特定的库,只要您需要就可以学习它。
答案 8 :(得分:1)
通过大量有关C ++的问题来判断(科学地:-),这些问题的答案与“Use Boost :: SomethingOrOther”一样具有最高评价的答案,我认为这非常重要。
吸引我从C到Java而不是C ++的东西是Java中提供的类的巨大数量。 Boost几乎设法说服我回去,除了我现在沉迷于Java是通用语言的Web服务。
答案 9 :(得分:1)
请记住,boost只是一组可用于提高工作效率的库(停止重新发明轮子)。
从各方面来看,它们都写得很好并且使用了你可能不会(即完全不会)自己想到的技巧。如果你的目的是通过源代码来学习高级c ++技术然后把自己搞得一团糟,但我想我会买一本好书。
另一方面,如果您只是想使用某些库函数来提高您的工作效率,请考虑您的选择。你在开发什么,所以你需要什么样的库?
我们公司拥有广泛使用boost的跨平台产品,但我们也只有Windows产品使用一些提升,但在大多数情况下,依赖于microsoft的库。 MS库质量很好,并且有(imo)优秀的文档(MS成功的一部分在于使Windows尽可能易于为第三方开发人员编程)。我特别提到MS,因为它们提供了广泛的库,用于许多目的,如boost。我们还使用了许多其他更集中的第三方库(即在一个领域提供功能的库,例如加密)。