


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1、C+包含頭文件中和的區(qū)別#include “book.h”#include#include “book.h”#includeinclude表示在標準庫里面找(不用加絕對路徑)include.XX.h表示在指定文件中找(需要加路徑(絕對或相對都行),上一級查找XX.h)PATH 是表示從當前目PATH 環(huán)境變量所列出的目錄。所以,系統(tǒng)頭文件一般用,用戶自己定義的則可以使用,加快搜索速度2、帶和不帶的頭文件的區(qū)別#include #include using namespace std;在以上邊的方式定義了頭文件后,如果在程序中創(chuàng)建如:ofstream file對象的時候編譯是會產(chǎn)生如下錯誤:
2、ofstream:ambiguous symbol這是二義性錯誤以下是正確用法和區(qū)別:現(xiàn)在來看看下面兩個 include:#include/ 這個就是1998 年標準化以后的標準頭文#include/ 這個就是標準化以前的頭文件更本質(zhì)上的區(qū)別就是iostream C+std 的namespace 里面。而相對的iostream.h C 標準庫也已經(jīng)經(jīng)過改造了。使用前者,就需要在代碼中添加語句:using namespace std;看看下面這兩個頭文件/ 標準化后經(jīng)過改造的C 的標準庫,所有的組件都放在了 std 中#include/ C+C#include/ 在看看這個頭文件C 標準庫下基于
3、 char* 的字符處理函數(shù)庫#include/ 在標準化以后他變成了這樣#include/ string #include經(jīng)過了標準委員會如此大規(guī)模手術(shù)后,在 98 年以前出品的 C+編譯器無法順利通過編譯也就是很正常的事了。起因在回過頭來看看標準程序庫,這個程序庫涵蓋范圍相當廣大,提過了許許多多class 的名稱和函數(shù)名與第三方提供的class namespace std C+程序代碼依賴那些已經(jīng)存準”(C+遲遲未標準化才導致這些情況的發(fā)生iosteam.h,complex.h 等等。為了解決這個新出現(xiàn)的問題,標準化委員會決定設(shè)計一些新的頭文件名,給那std外衣的組件所使用。把C+頭文件的
4、.h去掉,于是就有前面出現(xiàn)的iostreamC 的頭文件也做了相同的處理,同時在前面加上了一個字母 C 的頭文件(感覺上有中種族歧視的感覺)。同時標準化委員會聲明就C+C 頭文件為了滿 足“C 的兼容性”這個古老契約,仍然將繼續(xù)存活下去。但是,那些編譯器廠商不可能去推翻他們客戶的舊有編譯器(也跟本不會去這么做),所以那些舊有的 C+頭文件仍然茍延殘喘的活了下來,并不斷的擾亂那些 C+新兵的心智。下面就是現(xiàn)在大多數(shù) C+開發(fā)工具表示頭文件的組織狀態(tài):舊的 C+頭文件比如 iostream.hnamespace std 中。C+iostream namespacestd中,從而有效避免了名字污染的
5、問題。Cstdio.h繼續(xù)獲得支持,這類文件的內(nèi)容并未放在std中。C 函數(shù)庫的技能也有對應的新式 C+版本,起名稱類似cstdiostd的外衣。其實標準化以后的標準程序庫的改動并不只有這些而已,很多的標準化組件都被“tamplate 化”。其中就有元老級人物iostreamC+的標準程序庫的話, 你可以看看侯先生的C+標準程序庫。如果用了,則一定要引入命名空間,即using namespace 如果用了,則不那引入命名空間,否則會引起編譯錯誤,提示找不到命名空間,例程如下:/情況一:使用和命名空間#include using namespace std;int main()cout need
6、 to use namespace std!/n; return 0;輸出: need to use namespace std! Press any key to continue/情況二:使用,不引入命名空間#include /using namespace std; intmain()cout need to use namespace std!/n; return 0;輸出:needtousenamespacePress any key to continue/情況三:使用,引入命名空間,這時候編譯出錯#include usingnamespacestd; intmain()cout
7、need to use namespace std!/n; return 0;編譯錯誤信息:error C2871: std : does not exist or is not a namespace從 Visual C+ .NET 2003 開始,移除了舊的iostream 庫。標C+ iostream 庫。iostream 實C+ iostream 的部分。必須移除任何包含在代碼中的舊 iostream (fstream.hiomanip.hiostream.h、istream.h、ostream.h、streamb.h strstrea.h),并添加一個或多個新的標準 C+ iostr
8、eam (、和, .h 擴展名)。C+iostream庫不同于舊iostreamC+iostream庫中:open 函數(shù)不采用第三個參數(shù)(保護參數(shù))。無法從文件句柄創(chuàng)建流。C+ std C+ 庫頭。ios:out 標志無法打開ofstream ios:out OR ios ios:in ios:app 組合。eofbit 狀態(tài),到達文件尾后ios:good 不再返回非零值。ios:setf(_IFlags) ios:decios:oct ios:hex 的標志值一起使用。格式化的輸入/輸出函數(shù)和運算符假定只設(shè)置了ios_base。例如,setf( ios_base:oct, ios_base:
9、basefield ) 所有基信息并將基設(shè)置成八進制。ios:unsetf 返回 void 而不是以前的值。若出現(xiàn)錯誤,istream:get( char& _Rch ) 不分配給 Rch。istream:get( char* _Pch, int _Ncount, char _Delim ) 有三點不同: 沒讀取任何內(nèi)容時設(shè)置 failbit。提取的字符后總是存儲一個 eos(與結(jié)果無關(guān))。值為 -1 時 _Ncount 是一個錯誤。具有無效參數(shù)的 istream:seekg 不設(shè)置 failbit。streampos 是具有重載運算符的類。在返回streampos 值(比如istream:tellgostream:tellpstrstreambuf:seekoff strstreambuf:seekpos) 的函數(shù)中,應將返回值轉(zhuǎn)換成所需的類型:streamofffpos_t 或mbstate_t。strstreambuf:strstreambuf( _Falloc, _Ffree ) size_t long。除了上述改動外,以下作為舊 iostream 庫元素的函數(shù)、常數(shù)和枚舉數(shù)不是新iostream 庫的元素:filebuffstreamifstream ofstream 的 attach filebuffstreamifstream ofstream 的fd 成
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國針織絲羊絨短上衣行業(yè)發(fā)展研究報告
- 2025至2030年中國連系粱行業(yè)發(fā)展研究報告
- 2025至2030年中國貼片式三極管行業(yè)發(fā)展研究報告
- 2025至2030年中國薄荷糖行業(yè)發(fā)展研究報告
- 2025至2030年中國自動石材斜鉆機行業(yè)發(fā)展研究報告
- 2025至2030年中國美式水槍行業(yè)發(fā)展研究報告
- 2025至2030年中國純紙壁紙行業(yè)發(fā)展研究報告
- 2025至2030年中國竹編藝術(shù)臺燈行業(yè)發(fā)展研究報告
- 責任護士的病房管理
- 氣胸日常護理要點
- 2005室外給水管道附屬構(gòu)筑物閥門井05S502
- 露天煤礦智能集控員職業(yè)技能競賽理論考試題庫(含答案)
- 語文- 必修下冊文言文挖空練習 (教師版 )
- 北京市《配電室安全管理規(guī)范》(DB11T 527-2021)地方標準
- 2024中考語文《儒林外史》歷年真題專練(學生版+解析版)
- 數(shù)據(jù)真實性保證書
- 中國聯(lián)通元景大模型AI終端合作白皮書 2024
- 特種設(shè)備安全員守則內(nèi)容
- 南京2024年江蘇南京大學事業(yè)編制崗位招聘3人(二)筆試歷年典型考題及考點附答案解析
- DB50-T 1556.1-2024 醫(yī)療護理員服務(wù)等級評定 第1部分:普通患者護理員
- 2024年山東東營初中生物會考模擬試卷(解析版)
評論
0/150
提交評論