2016-02-29 38 views
0

誰能請解釋一下我下面的代碼:在C++中,在函數聲明分號之前宏的用法

#ifndef SOME_DEF 
     #define SOME_DEF 
    #endif 

    class base_class{  
     public: 
     base_class() SOME_DEF; 

     ~base_class() SOME_DEF; 

     bool init(int arg1, int arg2) SOME_DEF; 

    }; 

我無法理解宏觀的使用各項功能之後。

問候, Navnish

+1

你能指出我們的來源,你發現它嗎? –

+1

當一個文件被其他工具解析時,這是很常見的,並且該工具需要某種「標籤」來處理它。例如,Qt經常使用空的宏。 – molbdnilo

+0

我查找的代碼是公司專有代碼,所以我無法共享它。但是,是的,關於使用空白宏作爲標籤的評論是有道理的,因爲我們使用C++作爲輔助語言並通過一些固定的接口訪問它。 –

回答

1

在你的情況下,什麼也不做,除非SOME_DEF已經定義別的地方,例如:

#define SOME_DEF { cout << "default definition" << endl; } 

如果SOME_DEF定義那樣,然後在每一個功能的包括SOME_DEF的課程將具有該機構。

相關問題