2010-07-16 74 views
1

我在cygwin上使用GCC,但我想瀏覽標準庫中的string.cpp源文件。我只想閱讀源文件以瞭解我正在使用的函數的知識,但問題是我無法在任何地方找到它。我只找到頭文件而不是源文件。我認爲它是存儲在其他地方,或者可能是另一種形式? LIB? dll的?如果是這樣,那我怎麼才能提取出來..標準庫源文件

THX

+1

整個實施是在頭文件(這是一個模板類)。 – Stephen 2010-07-16 10:50:32

+0

是的,這個問題已經接近三年了,但請考慮標記其中一個答案爲正確答案。謝謝! – 2013-03-26 15:42:03

回答

2

std::string實際上是std::basic_string爲正常char類型的模板專業化。模板C++往往只在頭文件中結束。

我還沒有使用gcc庫的實現,但可能沒有cpp文件(或僅用於執行繁重工作的文件)。

2

在我的安裝,它是位於附近:

/usr/lib/gcc/i686-pc-cygwin/4.3.4/include/c++/string 
/usr/lib/gcc/i686-pc-cygwin/4.3.4/include/c++/bits/basic_string.h 

找到這類東西:

cd /usr 
find . | grep string 
+0

cygwin是否支持'locate'?對於大型搜索來說,這通常是更好的選擇。 – Stephen 2010-07-16 10:51:27

+0

函數實現也是'bits/basic_string.tcc'。 – 2010-07-16 10:57:32

+0

使用GNU grep'grep -R ...'就足夠了(畢竟這是Cygwin)。 – vonbrand 2013-02-08 01:06:16