C++中#if,#ifdef,ifndef
學習地址:http://zhidao.baidu.com/link?url=G-crYHtbFIklmbf968fXihBKGm3idPKXRUMRDCV2v67vmHfczjoEjBiF9xnCsbC_5Fu7poet7MaDq6QecXgYZ_
以#開頭的都是預編譯指令,就是在正式編譯之前,編譯器做一些預處理的工作。
#if 條件語句
程序段1 ? ? ? ? ? ? ? ? ? ? ? ?//如果條件語句成立,那么就編譯程序段1
#endif
程序段2 ? ? ? ? ? ? ? ? ? ? ? //條件不成立,那么久編譯程序段2
#ifndef x ? ?//先測試x是否被宏定義過
#define 程序段1 ? ? ? ?//如果沒有被宏定義過,那么就編譯程序段1
#endif
程序段2 ? ? ? ? ? ? ? ? ? ? ?//如果x已經定義過則編譯程序段2的語句,"忽視"程序段1
說明:ifndef是ifnotdefine的簡寫,其中ifndef與if!define含義相同。
#ifdef x ? ? ? ? ? ? ? ? ? ? ?//先測試x是否被宏定義過
程序段1 ? ? ? ? ? ? ? ? ? ?//如果x被宏定義過,那么就編譯程序段1
#endif
程序段2 ? ? ? ? ? ? ? ? ? ?//如果x沒有被定義過則編譯程序段2的語句,"忽視"程序段1
注意:#ifdef和ifndef的執行差別。
總結
以上是生活随笔為你收集整理的C++中#if,#ifdef,ifndef的全部內容,希望文章能夠幫你解決所遇到的問題。