Doxygen: Документирование перегруженных функций - PullRequest
5 голосов
/ 12 апреля 2011

Если моя документация отделена от моего кода, как я могу помочь Doxygen различать перегруженные функции (что использовать в поле \fn)?Одна функция будет задокументирована следующим образом:

void func() {
}

/**
    \fn func
    \details Description here.
  */

Что если у меня есть две функции с именем func?

void func() {
}

void func(int i) {
}

/**
    \fn [What goes here?]
    \details Description here.
  */

Ответы [ 2 ]

16 голосов
/ 14 апреля 2011

Для таких случаев есть команда \ overload doxygen.См. справочник команд doxygen .Используйте вашу обычную команду \ fn для базового случая и используйте \ overload для любой, ну, в общем, перегрузки.:)

4 голосов
/ 15 апреля 2011

Вы можете просто задокументировать каждую перегрузку, как если бы это был отдельный метод (что на самом деле является :-) - просто поместите всю сигнатуру метода в команду \ fn, а не просто имя метода.Как в:

/**
    \fn func()
    \details Description here.
 */
void func() { }

/**
    \fn func(int i)
    \details Description here.
 */
void func(int i) { }

(Извините, мне просто пришлось переместить комментарии к документу выше методов, к которым они принадлежат: -)

И действительно, вам не нужна команда \ fnвообще, если комментарий находится непосредственно перед элементом кода, к которому он относится.

/**
    \details Description here.
 */
void func() { }

/**
    \details Description here.
 */
void func(int i) { }
...