2009-08-10 54 views
1

我在哪裏可以看到std庫中的所有可用方法?因爲,我可以在我的程序中包括矢量,算法,我可以看到這個庫的頭文件/源文件,看看它是如何實現的?C++ std庫中有哪些可用的方法,我可以在哪裏看到/讀取它們?

例如。我知道我們可以在vector中使用push_back()方法,但是我可以在哪裏看到vector的所有方法,以及類似的其他庫?

有沒有關於它的文檔?

我正在使用Ubuntu,如果這有幫助。

回答

4

如果你想出去檢查源,看看到/usr/include目錄/ C++/XX /矢量

你可能需要重定向你的研究在此目錄中(你正在尋找在類depeding):/ usr/include目錄/ C++/XX/

例如,類是一個typedef和底層類型爲basic_string的您將在/usr/include/c++/x.x/ 比特查找/ basic_string的

2

這個網站有很多,你要尋找的東西:C++ STL Vector

有很多關於這一主題的書籍和網站。谷歌搜索的性病或STL庫會給你一個鏈接世界

這裏是containers

下面的列表是其他algorithms

2

CPP Reference

引用列表可能取決於有用您正在實施的平臺(如Windows的MSDN

+0

無論您正在使用哪個平臺,MSDN的引用都很好。它根據規範描述了該庫,並明確標記了Microsoft特定的擴展。它比cppreference更完整更全面。com在我的經驗 – jalf 2009-08-10 11:40:37

+0

我沒有說它不完整 - 這就是爲什麼我把它放在那裏 - 但它也包含MS特定的添加(這是不標準和不便攜的 - 無論是平臺之間,甚至在編譯器在同一平臺上)。 – 2009-08-10 11:51:11

3

Linux開發人員經常使用http://www.cplusplus.com作爲文檔來源。但要完全理解如何使用STL,我建議閱讀Scott Meyers的Effective STL

還有一種方法是使用手冊頁。安裝帶有文檔:

sudo apt-get install libstdc++6-4.2-doc 

之後,你就可以用命令man閱讀文檔:

man std::vector 
+0

非常好的提示!我在我的ubuntu盒子上安裝它,6.4.3軟件包版本似乎不包含任何man文件...?喜歡Jla3ep提到的6.4.2版本(稍後我會試試..) – 2009-08-10 14:11:43

+0

我剛剛在6.4.3上測試過它 - 它確實無法工作。 – 2009-08-10 15:05:00

2

Alexander Stepanov在惠普工作時創建了STL。 This是他工作的原始文檔,現在在Sgi主持,可能是最常用的參考文獻。

相關問題