首页 > 学院 > 开发设计 > 正文

#undef 的用法及其意义

2019-11-06 06:38:07
字体:
来源:转载
供稿:网友

在Visual Studio2008中编写如下代码:

[cpp] view plain copy PRint?#include <iostream>  using namespace std;    int main()  {  #define MODI 10      cout << MODI << endl;  #undef MODI      cout << MODI + 1 << endl;      return 0;  }  编译器会对 cout << MODI + 1 << endl;这行语句报错。

原因就是#undef起的作用:

当用完一个宏,比如MODI,不希望下面的代码再用到这个MODI,,那么就可以#undef它,那么下面如果再用到了MODI这个宏,编译器就会报错。

一种常用做法为:

[cpp] view plain copy print?#define MAX 50  #include "common.h"  #undef  MAX  

这样就只有在common.h中才能使用宏MAX。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表