记录 | C++ #ifdef #endif 条件编译指令

在 C++ 中,#ifdef 和 #endif 是条件编译指令,用于在编译期间条件性地包含或排除代码。它们通常与 #define 预处理指令一起使用,用于定义符号常量。

举个例子,假设有一个名为 DEBUG 的符号常量,在调试代码时将其定义为 1,在发布时不定义。可以在代码中使用条件编译指令来包含调试语句:

#ifdef DEBUG
  std::cout << "Debug mode is on." << std::endl;
#endif

当在编译时定义了 DEBUG 符号常量时,上面的代码会被包含在编译的代码中。否则,这段代码将被忽略。

还有一个相似的条件编译指令是 #ifndef,它表示“如果未定义”。这意味着只有当符号常量未被定义时,代码才会被包含。

例如:

#ifndef DEBUG
  std::cout << "Debug mode is off." << std::endl;
#endif

在这种情况下,只有当未定义 DEBUG 时,上面的代码才会被包含。

总的来说,条件编译指令可以用于在编译时选择性地包含或排除代码,这对于调试和发布代码非常有用。

你可能感兴趣的:(踩坑记录,c++,#ifdef,#endif,条件指令)