ifdef與 endif的作用

2021-10-21 00:27:50 字數 497 閱讀 5648

#ifndef list_h_

#define list_h_

class

list

//#else

#endif

常用於標頭檔案中,防止.**件中類被重複定義,因為在乙個標頭檔案a中常常引用另乙個標頭檔案b,在主程式中如果引用a.h,b.h, 那麼b中的類會出現重複定義的情況,則會報錯。很多時候我們並不清楚標頭檔案之間的相互呼叫關係,為防止這種情況,就是用ifndef語句來使標頭檔案僅被編譯一次。

這個語句相當於if語句,if(#define ***),***是否被定義過為判定條件,***跟著接一句#define ***語句,定義***, 一直到#endif結束,之間的**相當於括號內內容,如果是第一次引用標頭檔案,那麼***沒有被定義,標頭檔案被編譯,第二次引用,判斷***已經被定義過,標頭檔案則不會被編譯,防止類的重複定義。

注:一般格式為:#define 頭檔名大寫

ifdef與 endif的作用及用法

一般情況下,源程式中所有的行都參加編譯。但是有時希望對其中一部分內容只在滿足一定條件才進行編譯,也就是對一部分內容指定編譯的條件,這就是 條件 編譯 有時,希望當滿足某條件時對一組語句進行編譯,而當條件不滿足時則編譯另一組語句。條件編譯 命令最常見的形式為 ifdef 識別符號 程式段1 else ...

ifdef與 endif的作用及用法

ifdef與 endif的作用及用法 andylanzhiyong的部落格 csdn部落格 一般情況下,源程式所有的行都參與編譯。但是有時希望對其中一部分內容只有滿足一定條件才進行編譯,也就是對一部分內容指定編譯的條件,這就是 條件編譯 有時 希望當滿足條件時對一組語句進行編譯,當條件不滿足時則編譯...

條件 ifdefine與 endif的作用

好久沒寫 基本的東西都忘了。今天工作中犯了這個小錯誤,記下來,順便溫習一下。條件編譯中最常見的一種就是如下這種情況 ifdef 識別符號 程式段1 else 程式段2 endif 意思是,如果定義了識別符號就執行程式段1,否則就執行程式段2。其中的else可有可無,看自己 邏輯情況而定。稍微再引申一...