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

            小默

            [zz]MFC - #pragma once 與 #ifndef的區別

            #ifndef方式:    
            #ifndef __SOMEFILE_H__    
            #define __SOMEFILE_H__    1     ... ... // 一些聲明語句    
            #endif    
            #ifndef的方式依賴于宏名字不能沖突,這不光可以保證同一個文件不會被包含多次,也能保證內容完全相同的兩個文件不會被不小心同時包含。當然,缺點就是如果不同頭文件的宏名不小心“撞車”,可能就會導致頭文件明明存在,編譯器卻硬說找不到聲明的狀況
             
            #pragma方式    
            #pragma once     ... ... // 一些聲明語句   
            #pragma once 是個預處理指令,在頭文件的最開始加入這條指令表示:這個頭文件只被編譯一次     #pragma once則由編譯器提供保證:同一個文件不會被包含多次。注意這里所說的“同一個文件”是指物理上的一個文件,而不是指內容相同的兩個文件。帶來的好處 是,你不必再費勁想個宏名了,當然也就不會出現宏名碰撞引發的奇怪問題。對應的缺點就是如果某個頭文件有多份拷貝,本方法不能保證他們不被重復包含。當 然,相比宏名碰撞引發的“找不到聲明”的問題,重復包含更容易被發現并修正。

            總結: 1. #ifndef 由語言支持所以移植性好,#pragma 可以避免名字沖突

            posted on 2009-09-30 20:15 小默 閱讀(535) 評論(0)  編輯 收藏 引用 所屬分類: Language

            導航

            統計

            留言簿(13)

            隨筆分類(287)

            隨筆檔案(289)

            漏洞

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            久久久久久狠狠丁香| 色综合久久久久| 午夜天堂av天堂久久久| 久久久久亚洲AV片无码下载蜜桃| 韩国三级大全久久网站| 久久精品女人天堂AV麻| 亚洲欧美日韩中文久久| 99久久婷婷免费国产综合精品| 一本一道久久精品综合| 伊人久久综合精品无码AV专区 | 亚洲国产香蕉人人爽成AV片久久| 国产精品99久久久久久宅男小说| 久久香蕉超碰97国产精品| 久久九色综合九色99伊人| 国产高潮国产高潮久久久| 中文成人久久久久影院免费观看| 久久不射电影网| 久久99精品久久久久婷婷| 97精品伊人久久大香线蕉| 久久久免费观成人影院 | 精品国产乱码久久久久软件 | 久久婷婷国产麻豆91天堂| 久久精品国产亚洲沈樵| 亚洲欧美成人综合久久久| 国产精品久久婷婷六月丁香| 久久久久久狠狠丁香| 精品国产91久久久久久久| 亚洲愉拍99热成人精品热久久| 久久99精品久久久久久9蜜桃| 成人国内精品久久久久一区| 人妻无码久久一区二区三区免费 | 久久亚洲AV无码精品色午夜| 青青久久精品国产免费看| 国产精品成人久久久久久久| 色综合久久中文色婷婷| 嫩草影院久久国产精品| 久久久久久狠狠丁香| 精品久久综合1区2区3区激情| 国産精品久久久久久久| 91精品国产91热久久久久福利| 99久久国产综合精品网成人影院|