我正在尝试使用doxygen 1.8.8基于一组大型结构来构建文档,并且希望文档不仅引用我拥有的结构,而且还引用使用结构的位置。请注意,源代码是从外部系统构造的,我在其中进行了一些搜索和替换,使其成为类似于以下的结构:
struct intersect {
int aValue;
};
struct foo_intersect_SET {
order next;
foo owner;
intersect member;
};
struct intersect_bar_SET {
order next;
intersect owner;
bar member;
};
struct another_SET {
order ascending;
something owner;
foo member;
bar member2;
intersect member3;
};
我可以让doxygen生成文档,但在搜索“intersect”时,它只显示“intersect”和“intersect-bar-SET”,我希望它也显示“foo-u intersect-SET”,可能还显示“另一个”。
另外,在查看“intersect”结构时,我想得到一个使用它的列表,即它同时被“foo_intersect_SET”、“intersect_bar_SET”和“另一个_SET”使用。
你知道这两种方法中的任何一种都可以用强氧吗?
最佳答案
解决这个问题的一种可能的方法,我目前正在研究的是将结构转换为类,并使用多重继承来获得这两种方法的连接。换言之,我必须制作一个临时版本,它目前看起来像:
class foo : protected another {
}
class bar : proteced intersect_bar, protected another {
}
class intersect : protected foo_intersect, protected another {
int aValue;
};
class foo_intersect : private foo {
order next;
foo o_foo;
intersect m_intersect;
};
class intersect_bar : private intersect {
order next;
intersect o_intersect;
bar m_bar;
};
class another : private something {
order ascending;
something o_something;
foo m_foo;
bar m_bar;
intersect m_intersect;
};
这不是一个理想的解决方案,但是使用继承关系图和协作关系图,我确实可以从中获得我想要的大部分信息!一个警告是,原始的集合结构允许循环定义,这反过来导致循环继承,当然这是不合法的。。。
关于c - 有关struct doxygen的所有引用文献列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25908188/