我怎样才能通过几个C ++类“干燥”常用方法的常用文档?

时间:2015-05-12 22:05:10

标签: c++ doxygen

我正在使用doxygen来记录C ++库。

假设我有几个类A,B,C等,它们共享一组共同的方法A::m1(), B::m1(), ...等。这些方法在每个类中基本上都做同样的事情。

我想要一次实现这些常用方法。

另一种方法是类(A,B,C等)继承具有常用方法的公共类。但是,根据我的测量结果,这种方法意味着与多重继承结合时会略微牺牲性能。事实上,我的一些类继承了其他类,因此多继承是肯定的。

所以,为了“分解”我在一个大宏中编写它们的常用方法。类似的东西:

define COMMON_METHODS() \
void m1() { ..- } \
void m2() { ... \ 

然后,在每个班级,我把这个宏。

我知道这可能不是最好的技术(尽管性能非常好)。

现在,我还想为常用方法编写一个文档,并且(doc)由doxygen管理和生成。

不幸的是,我无法找到或设想某种方式(在doxygen的背景下)写一次doc。

所以如果有人可以提供一些技巧或想法让我写一次文档,我真的很感激。

此致

1 个答案:

答案 0 :(得分:2)

If you are using $('.apparelimage').click(function () { var id = this.id; if (id == "") { id = alert($(this).closest('.outer').find("img").id); } }); to automate the creation of some methods in a bunch of classes, you might want to consider encapsulating those methods in a template instead, and use CRTP.

COMMON_METHODS

This is different than all your classes inheriting from a common interface. There is no virtual interface lookup penalty with this technique.