• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            Oo緣來是你oO


            人本是人,不必刻意去做人;世本是世,無須精心去處世;自然的才是快樂的。

            posts - 11,comments - 8,trackbacks - 0
                                                      < iostream > 和 < iostream.h > 的區(qū)別

            關(guān)鍵詞:< iostream > 和 < iostream.h >
             
            你寫程序的時候,用< iostream >還是< iostream.h >?
            你知道它們有什么區(qū)別么?還是認(rèn)為他們根本就是一樣的?
            下面聽我給你吹(文中純屬個人言論,不涉及國家機密,請放心閱讀,若轉(zhuǎn)載請注明出處作者^-^)
                                          ---majianan
             
             
            其實沒有< iostream.h >這樣的東西 --- 標(biāo)準(zhǔn)化委員會在簡化非C標(biāo)準(zhǔn)頭文件時用< iostream > 取代了它。但又沒有完全取消< iostream.h >的使用,并且很多編譯器都同時支持< iostream >和< iostream.h >,造成現(xiàn)在的局面,老大(標(biāo)準(zhǔn)化委員會)確實有不得已的苦衷。
             
            話說當(dāng)年,在標(biāo)準(zhǔn)化委員會動手重建新的標(biāo)準(zhǔn)庫的時候,遇到了問題。為了避免類名函數(shù)名的沖突問題,引入了名字空間std,但無數(shù)現(xiàn)有的C++代碼都依賴于使用了多年的偽標(biāo)準(zhǔn)庫中的功能,例如,聲明在< iostream.h >和< complex.h >等頭文件中的功能?,F(xiàn)有軟件沒有針對使用名字空間而進(jìn)行相應(yīng)的設(shè)計或者升級,如果用std來包裝標(biāo)準(zhǔn)庫導(dǎo)致現(xiàn)有代碼不能使用,那手底下的小弟(程序員)是不會同意的。
             
            標(biāo)準(zhǔn)化委員會為了拉攏人心,吸引更多的人入會,決定為包裝了std的那部分標(biāo)準(zhǔn)庫構(gòu)建新的頭文件名。將現(xiàn)有C++頭文件名中的.h去掉,所以就出現(xiàn)了< iostream.h>和< iostream >等很多雙胞胎。對于C頭文件,采用同樣方法但在每個名字前還要添加一個C,所以C的<string.h>變成了<cstring>。
             
            舊的C++頭文件是官方明確反對使用的,但舊的C頭文件則沒有(以保持對C的兼容性)。其實編譯器制造商不會停止對客戶現(xiàn)有軟件提供支持,所以在可以預(yù)計的將來,舊的C++頭文件還會囂張一段時間。
             
            如果能明白字符串頭文件的使用,舉一反三,其他的也差不多會用了。
             
            <string.h>是舊的C頭文件,對應(yīng)的是基于char*的字符串處理函數(shù);
            <string>是包裝了std的C++頭文件,對應(yīng)的是新的strng類;
            <cstring>是對應(yīng)舊的C頭文件的std版本。
             
            好像跑遠(yuǎn)了,言歸正傳。如果你的編譯器都同時支持< iostream >和< iostream.h >,那使用#include < iostream >,得到的是置于名字空間std下的iostream庫的元素;如果使用#include < iostream.h >,得到的是置于全局空間的同樣的元素。在全局空間獲取元素會導(dǎo)致名字沖突,而設(shè)計名字空間的初衷正是用來避免這種名字沖突的發(fā)生。還有,打字時< iostream >比< iostream.h >少兩個字,所以我會使用< iostream > ^-^
             
            困了,睡了。
             
             
                                                  馬嘉楠
                                              2005-12-26 午夜
            posted on 2006-08-26 09:49 馬嘉楠 閱讀(3828) 評論(5)  編輯 收藏 引用 所屬分類: 【01】C++

            FeedBack:
            # re: iostream 和 iostream.h 的區(qū)別
            2006-08-26 15:31 | keyws
            “還有,打字時< iostream >比< iostream.h >少兩個字,所以我會使用< iostream > ”
            這種說法根本不通,.h少打兩字,那相應(yīng)得cout,cin每個地方都要使用std::的,這豈不得補償失?
            那你可能說加上using namespace std;,那多了可不是兩個字。


              回復(fù)  更多評論
              
            # re: iostream 和 iostream.h 的區(qū)別
            2006-09-02 00:32 | 踏雪赤兔
            若是原創(chuàng)可以理解。但還沒到值得轉(zhuǎn)載的級別  回復(fù)  更多評論
              
            # re: iostream 和 iostream.h 的區(qū)別
            2006-09-21 04:15 | 表面粗糙度輪廓儀
            不看好這個@_@~~  回復(fù)  更多評論
              
            # re: iostream 和 iostream.h 的區(qū)別
            2007-04-29 14:36 | 篷篙人
            看了之后明白了
            編譯的時候,用.h和沒有.h的有問題
            不知道為什么
            看了恍然大悟
            還是用標(biāo)準(zhǔn)的<iostream>
            程序就是要注重規(guī)范
            哲篇文章很有用  回復(fù)  更多評論
              
            # re: iostream 和 iostream.h 的區(qū)別
            2009-03-06 12:55 | 白白海
            剛學(xué) 看不懂
              回復(fù)  更多評論
              
            狠狠精品久久久无码中文字幕| 久久精品人成免费| 亚洲国产一成久久精品国产成人综合| 国产精品一区二区久久精品无码| 三级片免费观看久久| 无码久久精品国产亚洲Av影片 | 久久精品国产色蜜蜜麻豆| 久久中文字幕视频、最近更新| 伊人久久无码中文字幕| 亚洲天堂久久精品| 久久久久亚洲av无码专区喷水| 久久精品国产一区二区三区不卡 | 久久婷婷五月综合国产尤物app| 国产精品久久毛片完整版| 久久综合久久鬼色| 久久香蕉综合色一综合色88| 偷窥少妇久久久久久久久| 久久久WWW成人| 久久99中文字幕久久| 国内精品九九久久精品| 久久一区二区免费播放| 岛国搬运www久久| 91久久婷婷国产综合精品青草| 伊人色综合久久天天人手人婷| 青青青青久久精品国产h久久精品五福影院1421 | 国产成人精品综合久久久久| 久久一区二区三区免费| 99久久国产综合精品成人影院| 久久夜色精品国产噜噜亚洲AV| 思思久久99热只有频精品66| 久久久精品久久久久特色影视 | 精品无码久久久久久久动漫| 97r久久精品国产99国产精| 久久99国产乱子伦精品免费| 99蜜桃臀久久久欧美精品网站| 久久国产精品无| 久久久久精品国产亚洲AV无码| 2021国产精品午夜久久| 久久亚洲中文字幕精品一区| 久久精品久久久久观看99水蜜桃| 2020久久精品亚洲热综合一本|