C++的后綴為.h的頭文件舉例分析

這篇文章主要講解了“C++的后綴為.h的頭文件舉例分析”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C++的后綴為.h的頭文件舉例分析”吧!

成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站建設、做網(wǎng)站、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務泉州,10年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:13518219792

后綴為.h的頭文件C++標準已經(jīng)明確提出不支持了,早些的實現(xiàn)將標準庫功能定義在全局空間里,聲明在帶.h后綴的頭文件里,c++標準為了和C區(qū)別開,也為了正確使用命名空間,規(guī)定頭文件不使用后綴.h。

因此,當使用時,相當于在c中調用庫函數(shù),使用的是全局命名空間,也就是早期的c++實現(xiàn);當使用的時候,該頭文件沒有定義全局命名空間,必須使用namespace std;這樣才能正確使用cout。

一般一個C++代碼的老的帶“.h”擴展名的庫文件,比如iostream.h,在新標準后的標準庫中都有一個不帶“.h”擴展名的相對應,區(qū)別除了后者的好多改進之外,還有一點就是后者的東東都塞進了“std”名字空間中。  

問題在于C++要兼容C的標準庫,而C的標準庫里碰巧也已經(jīng)有一個名字叫做“string.h”的頭文件,包含一些常用的C字符串處理函數(shù),比如樓主提到的strcmp。  
這個頭文件跟C++的string類半點關系也沒有,所以并非的“升級版本”,他們是毫無關系的兩個頭文件。

要達到樓主的目的,比如同時:

void func(){   using namespace alex;//using指令   using chris::love;//uisng聲明   love();//chirs::love();   alex::love();//必須這么使用   }

因為標準庫非常的龐大,所程序員在選擇的類的名稱或函數(shù)名時就很有可能和標準庫中的某個名字相同。所以為了避免這種情況所造成的名字沖突,就把標準庫中的一切都被放在名字空間std中。但這又會帶來了一個新問題。無數(shù)原有的C++代碼都依賴于使用了多年的偽標準庫中的功能,他們都是在全局空間下的。 

所以就有了等等這樣的頭文件,一個是為了兼容以前的C++代碼,一個是為了支持新的標準。 C++標準庫中所有的標志府都被定義在一個名字空間std中,iostream也是標準庫中的頭文件,你查看一下include目錄,會發(fā)現(xiàn)又兩個頭文件iostream.h和iostream,其中iostream.h是C++以前的庫,iostream是在名字空間std中的庫,所以當你包含頭文件并想使用頭文件中的標志符的時候有兩種方法。

感謝各位的閱讀,以上就是“C++的后綴為.h的頭文件舉例分析”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對C++的后綴為.h的頭文件舉例分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關知識點的文章,歡迎關注!

網(wǎng)站欄目:C++的后綴為.h的頭文件舉例分析
文章網(wǎng)址:http://muchs.cn/article16/jpgegg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、、營銷型網(wǎng)站建設、定制網(wǎng)站網(wǎng)站內(nèi)鏈、移動網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)