#undef 的用法


在Visual Studio2008中編寫如下代碼:

 

#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這個宏,編譯器就會報錯。

一種常用做法為:

#define MAX 50
#include "common.h"
#undef  MAX

這樣就只有在common.h中才能使用宏MAX。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM