2016-02-29 37 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的课程将具有该机构。

相关问题