• <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>

            《c++primer》學(xué)習(xí)隨筆——預(yù)處理器變量

            第一遍看這本書的時候,稍微掃了一遍這個內(nèi)容,當(dāng)時看起來有時生硬,不是很懂,等于跳了過去了。現(xiàn)在再看,感覺很有用,也基本能看明白了。說個題外話,有時候看有些內(nèi)容,第一次看到的時候,覺得很難理解很難理解,就是反復(fù)看好幾遍也理解不了。那么不妨就放下這段內(nèi)容,也許你學(xué)過后面的內(nèi)容的后,有天你再返回來看當(dāng)初不懂的,就豁然開朗了,學(xué)習(xí)這本c++primer的過程中,真的有太多的這種體會了。

            開始正題:

            #define 指示的接受后面的名字,并把這個名字定義為預(yù)處理器變量,常用大寫。
            #ifndef  字面意思就是if not define 如果沒有定義。就是如果后面的名字沒有被定義成預(yù)處理器變量,那么這句話后所有的程序都將被執(zhí)行,直到遇見#endif

            說明具體用法和意義。
            假如我自己寫了兩個頭文件one.h,和two.h。其中one.h包括的是一個類的定義;two.h由于也要用到這個類,所以這個頭文件里面必然要有一行程序:#include“one.h”。
            而我們的主程序里面,開始必然要把我們自己定義的頭文件給加進去,必然應(yīng)該有兩行程序:#include“one.h”和#include“two.h”,這樣實際上one.h這個頭文件被包含了兩次,那個類的也相當(dāng)于定義了兩次,必然編譯時會出現(xiàn)錯誤,為了解決這個問題。在one.h里應(yīng)該加入這么一段程序:
            #ifndef ONE
            #define ONE
            //這里應(yīng)是one.h里面本來應(yīng)該有的代碼程序
            #endif
            這樣這個頭文件在主程序處理時只會被處理一次。因為:當(dāng)主程序首先碰到這句::#include“one.h,時,由于是第一次處理one頭文件,ONE這個預(yù)處理器變量還沒有定義呢,所以會執(zhí)行#define ONE這個語句,ONE變量被定義了,頭文件one中的代碼也會被執(zhí)行了。當(dāng)主程序碰到這句:#include“two.h”,由于two頭文件中,也有這么一句:#include“one.h”,然后程序就會再次進入到one這個頭文件中執(zhí)行,這是由于ONE這個變量在第一次執(zhí)行one這個頭文件時已經(jīng)被定義了,所以#ifndef ONE判斷失敗,不會執(zhí)行后續(xù)的代碼了,也就不會在執(zhí)行one頭文件中實際有用的代碼了。這樣保證了頭文件只會被處理一次。

            因此應(yīng)該在自己編寫的每個頭文件中都加上保護符,避免頭文件被多次包含。

            posted on 2011-06-15 20:13 古月 閱讀(859) 評論(0)  編輯 收藏 引用


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2011年6月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            導(dǎo)航

            統(tǒng)計

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章檔案

            C++/C

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            一级做a爰片久久毛片看看| 色偷偷久久一区二区三区| 青青青国产精品国产精品久久久久 | 久久久久亚洲AV成人网人人软件| 99精品伊人久久久大香线蕉| 久久综合九色欧美综合狠狠| 99久久国产宗和精品1上映| 国产V综合V亚洲欧美久久| 久久综合精品国产一区二区三区 | 久久国产高潮流白浆免费观看| 精品熟女少妇a∨免费久久| 久久久91人妻无码精品蜜桃HD | 99久久精品免费看国产免费| 久久精品国产欧美日韩99热| 99麻豆久久久国产精品免费| 99久久做夜夜爱天天做精品| 99久久99这里只有免费费精品| 久久午夜综合久久| 久久er热视频在这里精品| 人妻无码αv中文字幕久久琪琪布 人妻无码精品久久亚瑟影视 | 久久伊人五月丁香狠狠色| 91精品国产91久久久久久青草| 亚洲精品美女久久777777| 日韩久久久久中文字幕人妻| 久久久久久免费一区二区三区 | 亚洲熟妇无码另类久久久| 久久久网中文字幕| 丰满少妇人妻久久久久久4| 精品人妻久久久久久888| 天天躁日日躁狠狠久久| 一级做a爰片久久毛片毛片| 欧美大战日韩91综合一区婷婷久久青草 | 久久国产精品成人片免费| 精品久久久久久中文字幕大豆网| 久久久久18| 亚洲精品视频久久久| 久久精品国产色蜜蜜麻豆| 久久久久亚洲精品无码网址| 欧美激情精品久久久久久久| 久久久艹| 少妇内射兰兰久久|