我正在使用Doxygen为我当前的项目生成一个API,并发生在一些奇怪的行为。基本上,如果我使用初始化列表在类的构造函数中设置成员数组,Doxygen不会产生正确的输出。Doxygen问题与C++数组初始化
这里有一个简单的测试类:
#ifndef TEST_HPP
#define TEST_HPP
class TestClass {
public:
/** Constructor Version 1 */
TestClass() : v{0,0,0} { }
/** Constructor Version 2 */
// TestClass() {
// v[0] = 0;
// v[1] = 0;
// v[2] = 0;
// }
protected:
/** my little array */
float[3] v;
};
#endif // TEST_HPP
如果我与构造函数的版本1的文件运行doxygen的,我得到了,没有构造文档类相对空的HTML文件,并没有提到我的变量v。如果我注释掉版本1并使用版本2,则Doxygen会正确生成该类的文档。
我知道这种类型的数组设置对于C++ 11来说是新的,但它是在初始化列表中完成的初始化还是事实?如果有人知道是什么导致了这种行为,我会很感激,因为我们在代码中使用了这些类型的初始值设定项,并且我希望在必要时避免进行彻底的更改。
您使用的是哪种版本的氧气? –
@DavidHammen我使用apt-get中的doxygen 1.7.6.1 – kelano