• <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 小默 閱讀(533) 評論(0)  編輯 收藏 引用 所屬分類: Language

            導航

            統計

            留言簿(13)

            隨筆分類(287)

            隨筆檔案(289)

            漏洞

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            久久综合鬼色88久久精品综合自在自线噜噜 | 久久久久亚洲AV成人网| 久久国产高清字幕中文| 久久亚洲欧洲国产综合| 亚洲精品乱码久久久久久蜜桃| 亚洲精品国精品久久99热一| 亚洲午夜久久久久久久久久| www亚洲欲色成人久久精品| 精品无码人妻久久久久久| 久久精品aⅴ无码中文字字幕重口 久久精品a亚洲国产v高清不卡 | 久久久婷婷五月亚洲97号色 | 无码国内精品久久人妻蜜桃| 精品一区二区久久| 久久婷婷人人澡人人爽人人爱 | 精品综合久久久久久88小说| 久久精品免费一区二区| 国产精品嫩草影院久久| 日韩人妻无码一区二区三区久久| 亚洲国产天堂久久久久久| 91精品国产综合久久久久久| 久久精品国产亚洲AV久| 久久99精品国产麻豆不卡| 国内精品久久久久影院日本 | 久久青青草原亚洲av无码app | 久久精品国产亚洲AV忘忧草18 | 久久午夜无码鲁丝片午夜精品| 99久久精品午夜一区二区| 伊人色综合九久久天天蜜桃| 曰曰摸天天摸人人看久久久| 久久精品国产网红主播| 久久久亚洲裙底偷窥综合| 伊人色综合九久久天天蜜桃| 女同久久| 久久人人青草97香蕉| 亚洲欧洲中文日韩久久AV乱码| 久久久久国产| 久久影视综合亚洲| 日本精品一区二区久久久| 午夜精品久久久久久久无码| 一级做a爰片久久毛片免费陪| 久久免费看黄a级毛片|