#ifndef

#ifndef#

#ifndef 是 C++ 预处理器指令之一,用于检查宏是否已经被定义。如果宏没有被定义,那么编译器会执行后面的代码块。这个指令通常与 #define#endif 一起使用,用于防止头文件的重复包含。

下面示例代码,展示了如何使用 #ifndef 来避免头文件的重复包含:

#ifndef HEADER_H
#define HEADER_H

// 在这里放置头文件中的代码

#endif // HEADER_H

在上面的代码中,#ifndef HEADER_H 检查宏 HEADER_H 是否已经被定义。如果没有被定义,那么编译器会执行 #define HEADER_H 语句,将宏定义添加到预处理器的符号表中。然后,编译器会继续编译后续的代码,直到遇到 #endif 指令。

通过这种方式,可以确保头文件只被包含一次,从而避免了重复定义和潜在的错误。