C++定义宏

C++定义宏

  • C++的宏非常有用,特别是在日志系统这种地方。
  • 宏在预编译阶段使用,可以替换代码中任意的东西。
  • 宏非常有用,但是不要过度使用他们,因为这可能会让别人看不懂你的代码。

下面是几个宏使用的例子:

#include <iostream>

// 定义一个宏
#define WAIT std::cin.get()

int main()
{
    
    
    WAIT;
}
#include <iostream>
// 定义一个宏
#define LOG(x)  std::cout << x << std::endl

int main()
{
    
    
    LOG("Xwp is handsome");
}

这个就牛了,可以指定一些代码不参与编译

当我#define PR_DEBUG 1时:即代表LOG(x)这段宏有效,然后会输出信息;
当我#define PR_DEBUG 0时:即LOG(x)这段宏无意义,不会输出信息。

#define PR_DEBUG 0
#if PR_DEBUG == 1
#define LOG(x) std::cout << x << std::endl
#else
#define LOG(x)
#endif

int main()
{
    
    
    LOG("xwp is handsome");
    LOG(8);
}

另外,宏的定义必须在一行,如果想要换行写的话,需要使用\

#include <iostream>

#define MAIN int main() \
{
      
      \
    std::cout << 3 << std::endl;\
}

MAIN

猜你喜欢

转载自blog.csdn.net/qq_46480020/article/details/128892288