Я хочу повторно использовать блок примера кода с помощью тега \ copydoc.
Чтобы объяснить проблему. Допустим, у меня есть две задокументированные функции:
/** Aquires resource. */
Resource* AquireResource( int id );
/** Releases resource.*/
void ReleaseResource( Resource* res );
Во многих случаях я хочу вставить небольшой пример кода, показывающий, как использовать функцию в контексте, который часто включает использование диапазона функций, которые все могут быть достаточно изображены одним и тем же пример кода, например:
/** Aquires resource.
*
* \par Example:
* \code
* Resource* res = AquireResource( 42 );
* ReleaseResource( res );
* \endcode
*/
Resource* AquireResource( int id );
/** Releases resource.
*
* \par Example:
* \code
* Resource* res = AquireResource( 42 );
* ReleaseResource( res );
* \endcode
*/
void ReleaseResource( Resource* res );
Таким образом, пример кода дублируется, что не годится. Я хочу использовать copydoc, что-то вроде этого:
/** \page ResourceExampleTag
* \code
* Resource* res = AquireResource( 42 );
* ReleaseResource( res );
* \endcode
*/
/** Aquires resource.
*
* \par Example:
* \copydoc ResourceExampleTag
*/
Resource* AquireResource( int id );
/** Releases resource.
*
* \par Example:
* \copydoc ResourceExampleTag
*/
void ReleaseResource( Resource* res );
Т.е. пример кода в одном месте, повторно используемый в других.
На самом деле это все, что я получил, но меня это не устраивает, так как я этого не делаю. Я не знаю, как скрыть фиктивную страницу ResourceExampleTag, которую я создаю для копирования. Итак, где-то в итоговой документации есть ' sa с некоторым кодом, полностью вырванным из контекста. Насколько я понимаю, здесь нужно найти тег, на который может ссылаться copydoc, и который сам по себе не отображает никакого контента. Тем не менее, это всего лишь мои мысли, могут быть и гораздо лучшие.
Я также могу упомянуть, что я (по нескольким причинам, о которых я не буду вдаваться в подробности) не хочу использовать тег \ example с внешними файлы примеров кода.
Спасибо.