#include 應用


#include <fstream> ,相當於是引用標准C++的頭文件,ifstream是標准C++的STL中的類,STL中的類都是定義在std這個名字空間中。
所以std::ifstream sitelist( "sitelist ",ios::nocreate);
就是使用std這個名字空間中定義的ifstream這個類,而且這樣使用這個類就沒有出現在全局名字空間中。

#include <fstream.h> ,相當於使用了VC實現的C++提供的頭文件,此時ifstream雖有相同的功能,可是他現在相當於是全局名字空間中定義的了。相當於:
::ifstream sitelist( "sitelist ",ios::nocreate);
結果結果和別的東東形成全局名字空間污染問題。(也就是重名了)

C++Primer的第八章寫得很清楚。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM