#ifndef
是一個預處理指令,用于防止頭文件被多次包含。它的工作原理是檢查括號內的宏是否已經定義。如果沒有定義,編譯器會執行 #ifndef
和對應的 #endif
之間的代碼,并定義該宏以防止再次包含。
使用 #ifndef
的示例:
假設我們有一個名為 example.h
的頭文件,我們希望防止它被多次包含。我們可以這樣做:
#ifndef EXAMPLE_H
#define EXAMPLE_H
// 在這里放置頭文件的內容
#endif // EXAMPLE_H
在這個例子中,如果 EXAMPLE_H
宏尚未定義,編譯器會執行 #ifndef
和 #endif
之間的代碼,并定義 EXAMPLE_H
宏。這樣,如果 example.h
被再次包含,預處理器會發現 EXAMPLE_H
宏已經定義,因此不會再次執行其中的代碼。