任何人都可以向我解释以下代码:
#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;
};
我无法理解每个函数后宏的用法。
答案 0 :(得分:1)
在您的情况下,它不执行任何操作,除非SOME_DEF
已在其他位置定义,例如:
#define SOME_DEF { cout << "default definition" << endl; }
如果SOME_DEF
被定义为那样,那么您班级中包含SOME_DEF
的每个功能都将拥有该主体。