我剛纔注意到我的程序使用字符串類進行編譯,但沒有包含<string>
頭文件。事實證明,<iostream>
包括<ios_base>
,其中又包括<string>
。應該包含一個已經通過其他頭文件包含的頭文件嗎?
這是不好的做法,我應該明確包括<string>
?即使這只是一個清晰的情況?
可以安全地認爲這適用於不僅僅是<string>
標題?也許這是實現特定的,或者標準狀態<string>
標題是否包含在<ios_base>
和<iostream>
?確保任何受到尊重和廣泛使用的實施將始終包括<string>
提供<iostream>
的呼叫存在。
http://en.wikipedia.org/wiki/Incl ude_guard。標準庫有它們。 – Dragontamer5788 2010-10-15 20:36:35
這很方便,因爲我很久沒有介紹過該功能。謝謝。 – aLostMonkey 2010-10-15 20:41:15