2009-11-19 46 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的分析器生成,圖庫,異步輸入和輸出等。可以發現這些庫一次一個。在你出去實現你自己的語言解析器之前,你一定要看看這裏:-)