Используя INHERIT_DOCS, я могу скопировать документацию функции абстрактного базового класса в документацию производного класса.
Однако я добавил абстрактную функцию в группу членов, и хотя группы членов действительно появляются в документации производного класса, они выглядят пустыми.Переопределенные функции отображаются в разделе «Открытые функции-члены» документации по производному классу.
Вот пример кода, который я запустил, используя сгенерированный по умолчанию Doxyfile (используя Doxygen 1.8.15):
//! Base class.
class BaseClass
{
public:
//! @name funcGroup
//@{
//! absFunc brief.
virtual void absFunc () = 0;
//@}
};
//! Derived class 1.
class DerivedClass1 : public BaseClass
{
public:
void absFunc () override {}
};
В результате DerivedClass1::absFunc
содержит краткое изложение BaseClass::absFunc
но не входит в группу funcGroup
, хотя группа funcGroup
присутствует в документации.
Я играл с настройками SUBGROUPING, INLINE_GROUPED_CLASSES, DISTRIBUTE_GROUP_DOC и GROUP_NESTED_COMPOUNDS без успеха.На самом деле все будет в порядке с
- переопределенной функцией, появляющейся в группе базовых классов, или с
- группой базовых классов, вообще не появляющейся
Но иметь пустую группу раздражает.
Вот еще несколько вещей, которые я безуспешно пробовал:
//! Derived class 2.
class DerivedClass2 : public BaseClass
{
public:
//! \ingroup funcGroup
void absFunc () override {}
};
//! Derived class 3.
class DerivedClass3 : public BaseClass
{
public:
//! \addtogroup funcGroup
void absFunc () override {}
};
//! Derived class 4.
class DerivedClass4 : public BaseClass
{
public:
//! @name funcGroup
//! A description of the group.
//! @{
void absFunc () override {}
//! @}
};
Последний вариант создает вторую группу-член, называемую funcGroup, которая содержит мою функцию, но оставляет пустую группу-член.
Этот вопрос кажется актуальным , но он возник несколько лет назад, и я не уверен, что с тех пор что-то изменилось.
Любая помощь приветствуется - в идеале переопределение должно отображаться в группе его базового класса, если оно не переопределено явно.Возможно, это поведение, и я ошибаюсь ...