- #include <iostream>
- using namespace std;
- int main()
- {
- #define MODI 10
- cout << MODI << endl;
- #undef MODI
- cout << MODI + 1 << endl;
- return 0;
- }
原因就是#undef起的作用:
当用完一个宏,比如MODI,不希望下面的代码再用到这个MODI,,那么就可以#undef它,那么下面如果再用到了MODI这个宏,编译器就会报错。
一种常用做法为:
- #define MAX 50
- #include "common.h"
- #undef MAX
这样就只有在common.h中才能使用宏MAX。