是否可以教Doxygen将std::shared_ptr<T>
类型的成员识别为聚合?我认为它适用于普通指针,尽管我添加了BUILTIN_STL_SUPPORT=YES
。
这个问题也延伸到std::unique_ptr
,它应该是一个组合,我认为std::map<K,V>
,std::vector<V>
等可以记录为具有多重性1 ... N的组合,尽管我是我确定在所有情况下都不想要这个。
如果Doxygen无法做到这一点,我会对C ++的替代文档系统感兴趣。
答案 0 :(得分:2)
从版本1.8.14开始,当std::shared_ptr<T>
开启时,Doxygen不会将BUILTIN_STL_SUPPORT
添加到std类的内部列表中。
但通过修改Doxygen源来添加它相对容易。在src/doxygen.cpp
中,有一个全局变量g_stlinfo
,它包含标准类的定义。此外,同一类中的addSTLClasses()
函数具有智能指针类的分支。
请参阅this changeset以获取最小化更改以启用shared_ptr支持。
不幸的是,我还没有回答你的其余问题。