#define 用法總結

#define的用法經常不理解,特開一個總結帖。

  1. 數據類型的替換
    #define CONST(type, memclass) const type
    當遇到CONST(type, memclass) 的時候,會被const type 所替代。

  2. 普通的數字替換
    #define kk 10

  3. 防止重複編譯
    “app.h”文件中包含函數max()的定義;
    此時如果,“bpp.h”文件和“cpp.h”同時#include“app.h” 且“bpp.h” 文件中#include“cpp.h”,就會出現重複編譯max()的問題,但是如果 “app.h”有:
    #ifndef _APP_H
    #define _APP_H
    能避免問題的出現。

  4. 空替換
    #define DCM_CODE
    定義宏,並在預處理過程中將其替換爲空字符串(即刪除)。這樣做主要是爲了標記某些內容,使程序閱讀者能夠清楚標記表明的意義,同時又不影響被編譯的源代碼。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章