如何使用 Doxygen 更改派生类中的函数描述
How to change function description in derived class with Doxygen?
我有两个类:
class A {
public:
/** Brief description
* Grand description
*/
virtual void func() {
// Do something.
}
};
class B: public A {
// How to re-describe func() here?
};
我已经在 Doxygen 配置中打开了描述继承,这很好。但是我想将派生类中的描述更改为一些在基类中实现的函数,而无需重新实现这些函数。
当然,我可以做到以下几点:
class B: public A {
public:
/** My new description.
* ...
*/
virtual void func() {
A::func();
}
};
但对我来说似乎很"丑陋"——编写不必要的代码只是为了添加一些注释。
还有其他解决方案吗?
如果你真的想,你也可以使用预处理器技巧:
class B: public A {
public:
#ifdef ONLY_FOR_DOXYGEN
/** Beautiful docs */
virtual void func();
#endif
};
以及这些设置:
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
PREDEFINED = ONLY_FOR_DOXYGEN
这样只有doxygen才能看到额外的代码。
这可能不是你想听到的,但似乎doxygen不能为代码中没有的实体发明文档,并且相同的函数应该具有相同的文档的想法似乎是明智的。
我能想到的最好的方法是在您的A
文档中放置一个部分,大意如下:
/** Brief
* par For Class A
* Class A details...
* par For Class B
* Class B details...
*/
这应该为两者放置相同的文档,读者可以选择相关部分吗?
不过,这意味着它们仍然必须具有相同的简短描述。
相关文章:
- "error: no matching function for call to"构造函数错误
- 什么时候调用组成单元对象的析构函数
- 继承函数的重载解析
- 为什么随机数生成器不在void函数中随机化数字,而在main函数中随机化
- 请描述一下在 c++ 中在此类中定义构造函数的方式?
- 函数描述与C++引用上的可能实现
- 使用可变参数模板类型描述函数参数
- 可以将算术表达式作为参数传递给一个函数来描述其中的逻辑
- 具有POSIX文件描述符对象的C 复制构造函数
- 用一个函数来描述它们
- 对 ISO C++ 标准中 std::tuple 的默认构造函数描述感到困惑
- 更改描述函数行为的位置是否会导致错误?
- Gcc 中是否有命令来获取关键字(或函数等)的描述
- 如何使用 Doxygen 更改派生类中的函数描述
- 函数cin.clear()在C++详细的描述中做了什么
- 描述这个用于十进制到二进制转换的函数
- 氧-在名称空间中没有对函数的详细描述
- Unix accept()函数两次返回相同的文件描述符
- 多次调用同一对象的析构函数,其结果与标准中描述的不一样
- 使用受保护的方法而不是为继承树中的每个派生类创建新的虚拟函数,这是一种好的做法吗.例如,在描述中