<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      C/C++中的預處理變量的作用

      我們在編寫程序時,同時包含一個頭文件多次是一件常見的事情,當然同時多次包含一個頭文件可能會引起不必要的錯誤。使得頭文件安全的通用做法,是使用預處理器定義頭文件保護符。頭文件保護符用于避免在已經見到頭文件的情況下重新處理該頭文件的內容。

       

      C++為了避免頭文件的多次包含,引入了預處理變量:#define,#ifndef ,#endif。

      預處理器變量 的名字在程序中必須是唯一的。任何與預處理器變量相匹配的名字的使用都關聯到該預處理器變量。為了避免名字沖突,預處理器變量經常用全大寫字母表示。

       

      預處理器變量有兩種狀態:已定義或未定義。定義預處理器變量和檢測其狀

      態所用的預處理器指示不同。

       

      #define 指示接受一個名字并定義該名字為預處理器變量。

      #ifndef字面意思就是if not define,如果沒有定義指示檢測指定的預處理器變量是否未定義。如果預處理器變量未定義,那么跟在其后的所有指示都被處理,直到出現 #endif。

       

      沒有接觸過預處理器變量的同學看了上面解釋可能不太理解,下面具體一下說明預處理變量用法和意義所在。

       

      假設現在有兩個頭文件xx1.h,和xx2.h。其中xx1.h包含一個類class1的定義;如果在頭文件xx2.h中要用到class1這個類,那么我們在xx2.h這個頭文件里面則要包含xx1.h這個頭文件,即:#include“xx1.h”。

       

      在主程序xx.cpp中,開始需要把自定義的頭文件xx1.h和xx2.h給加進去,即:#include“xx1.h”

      #include“xx2.h”

      那么這樣xx1.h這個頭文件實際上被包含了兩次,xx1.h中的類class1也相當于被定義了兩次,在編譯時會出現錯誤,那么上面介紹的預處理變量:#define,#ifndef ,#endif可以完美的解決這個問題。

      首先我們在xx1.h里加入這樣的幾句話:

      #ifndef  XX1

      #define  XX1

      //

      xx1.h里面原有的代碼

      //
      #endif

       

      這樣當xx1.h這個頭文件被包含多次時,在主程序處理時卻只會被處理一次。下面稍作解釋:

      當主程序遇見頭文件#include“xx1.h”時,如果是第一次處理xx1.h頭文件,由于預處理器變量XX1還沒有被定義,所以會執行#ifndef  XX1這個語句,同時預處理器變量XX1也被定義,頭文件xx1.h中的代碼也會被執行。

      當主程序遇見頭文件#include“xx2.h”時,因為xx2.h也包含xx1.h,所以程序還會再次進入到xx1.h這個頭文件中執行,這時由于預處理器變量XX1在第一次執行xx1.h這個頭文件時已經被定義,所以#ifndef XX1條件判斷失敗,那么便不會在繼續執行后續的代碼,即不會在執行xx1.h頭文件中編寫的代碼了。這樣便保證了頭文件xx1.h在包含多次的情況下只會被處理一次。

      轉載自@xiaoaihhh, https://blog.csdn.net/u010213393/article/details/40556331

      posted @ 2018-04-16 10:06  Mars_2030  閱讀(599)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 日韩精品av一区二区三区| 成全高清在线播放电视剧| 精品国产一区二区在线视| 久久天天躁狠狠躁夜夜躁2012| 国产精品中文字幕日韩| 亚洲中文字幕人妻系列| 狠狠婷婷色五月中文字幕| 偷看少妇自慰xxxx| 亚洲日本韩国欧美云霸高清 | 国语偷拍视频一区二区三区| 99久久国产综合精品成人影院| 精品人妻免费看一区二区三区| 一本色道久久—综合亚洲| 欧美成人性色一区欧美成人性色区 | 玖玖在线精品免费视频| 无码人妻精品一区二区三区下载| 国产欧美精品一区二区三区-老狼| 国产亚洲欧洲av综合一区二区三区| 国产成人a在线观看视频免费| 亚洲色欲色欲www| 柠檬福利第一导航在线| 亚洲人成网站77777在线观看 | 99热国产这里只有精品9| 人妻熟女一区二区aⅴ向井蓝| 一本色道久久加勒比综合| 热久久这里只有精品国产| 国产高颜值极品嫩模视频| 国产情侣激情在线对白| 亚洲伊人精品久视频国产| 日日碰狠狠添天天爽五月婷| 国产真实野战在线视频| 吉川爱美一区二区三区视频| 国产99视频精品免费专区| 中国老妇xxxx性开放| 国产精品一区二区小视频| 午夜精品极品粉嫩国产尤物| 人妻夜夜爽天天爽三区丁香花| 国产精品中文字幕自拍| 日韩精品国产另类专区| 又色又爽又黄的视频网站| 尉氏县|