使用宏从标头调用方法

时间:2013-12-23 01:40:59

标签: c++ templates macros header

我用c ++编写了一个基本的反射库,我可以像这样注册我的类/字段:

addType<Color>()
    ->addField(Field::createField("r", &Color::r))
    ->addField(Field::createField("g", &Color::g))
    ->addField(Field::createField("b", &Color::b))
    ->addField(Field::createField("a", &Color::a));

但是我现在想在我自己的头文件中注册所有类(理想情况下使用宏),如下所示:

REGISTER_TYPE(Color);
REGISTER_FIELD(r, &Color::r);

或至少以类似的方式,但要做到这一点,我需要调用标题内的方法(在启动时),这可能/标准/最好的方法是什么,纯粹在标题内执行此操作?它会增加最终生成的可执行/动态库的大小吗?

非常感谢任何帮助。

0 个答案:

没有答案