我使用了很多不同名称的类,但基数总是相同的
例如:
class MyScript : public MyClass
{
public:
MyScript() : MyClass("MyScript") { }
/* My Functions */
};
void Register()
{
new MyScript();
}
可以创建一个宏,以避免在我的课程中出现重复吗?例如
class MyScript : public MyClass
{
/* My Functions */
};
void Register()
{
RegisterScript(MyScript);
}
RegisterScript是有写
的宏public:
MyScript() : MyClass("MyScript") { }
感谢您的回答
答案 0 :(得分:0)
假设您的默认构造函数除了实例化基类之外什么都不做,您可以执行以下操作:
#define RegisterScript(Type) Type() : MyClass(#Type) { }
这是一个带参数的宏的示例,此处的参数是派生类类型。但是,这个宏必须在类里面调用。在课堂外设置构造函数无论如何都没有多大意义。