Quiero reutilizar un bloque de código de ejemplo con la etiqueta \ copydoc.Doxygen etiqueta copydoc para reutilizar ejemplos de código
Para explicar el problema. Digamos que tengo dos funciones documentadas:
/** Aquires resource. */
Resource* AquireResource(int id);
/** Releases resource.*/
void ReleaseResource(Resource* res);
En muchos casos, quiero poner en un pequeño ejemplo de código de cómo utilizar la función en un contexto, que a menudo implica el uso de una amplia gama de funciones que todos sean suficientemente representado por el mismo ejemplo de código, por ejemplo:
/** 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);
Así que el ejemplo del código está duplicado, no es bueno. Deseo utilizar copydoc, algo como esto:
/** \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);
I.e. ejemplo de código en un lugar, reutilizado en otros lugares.
Esto es en realidad lo que he conseguido, pero no estoy satisfecho con él ya que no sé cómo ocultar la página ficticia 'ResourceExampleTag' que estoy creando para copiar. Entonces, en algún lugar de la documentación resultante, hay una página con algún código completamente fuera de contexto. Por lo que puedo ver, lo que hay que hacer aquí es encontrar una etiqueta a la que copydoc pueda hacer referencia y que no represente ningún contenido en sí mismo. Sin embargo, esa es mi línea de pensamiento, podría haber otras mucho mejores.
También puedo mencionar que (por varias razones no me molestaré en entrar) no deseo utilizar la etiqueta \ example con archivos de código de ejemplo externos.
Gracias.
En realidad, poder usar un solo archivo externo para todos los ejemplos y seleccionarlos cuidadosamente por etiquetas es probablemente el más limpio que he visto hasta ahora. Aclamaciones. – sharkin