2014-06-25 1 views
2

j'ai le problème suivant struct Doxygen: Il y a un struct, appelez matrixplusieurs langues

struct matrix { 
    double** a; 
    int r; 
    int c; 
} 

Maintenant, je veux documenter mon struct en allemand un anglais.

donc je veux une brève description de tous les membres avant la struct

/** 
* \~german 
* \brief description 
* 
* 

Un je veux utiliser une syntaxe similaire dans les fonctions avec param.

Existe-t-il un moyen de faire cela, afin que je puisse expliquer les membres au-dessus du code de la structure?

Il y a aussi la possibilité de faire

int r; //!< description 

Mais cela devient assez déroutant avec de multiples langues et perturbe le flux de lecture du code.

grâce

EDIT:

trouvé une solution:

/**\struct matrix 
* \~German 
* \brief Beschreibung 
* 
* \~English 
* \brief description 
* 
*/ 

struct matrix { 
    double **a; //!<\~English comment \~German Kommentar 
    int r;  //!<\~English comment \~German Kommentar 
    int c;  //!<\~English comment \~German Kommentar 

};

Si l'une des langues est sur une autre ligne que son élément, elle ne fonctionne pas correctement.

+0

Quand je le comprends bien, vous voulez générer une version allemande et anglaise de la documentation. Vous devez probablement générer deux fois la documentation et utiliser les possibilités de langage indiquées par vous ou utiliser les constructions \ cond. – albert

+0

Je voulais juste demander s'il est possible de l'écrire comme @param pour les fonctions. Y a-t-il un moyen, c'est similaire? Puis-je expliquer/commenter les membres de structure similaires aux paramètres de fonction au-dessus de la structure? – user3556115

+0

Si vous avez trouvé votre solution, postez-la comme réponse et acceptez-la. – Chnossos

Répondre

5

a finalement trouvé une solution sur moi-même:

/**\struct matrix 
* \~German 
* \brief Struct Beschreibung 
* 
* \~English 
* \brief Struct description 
* 
*/ 

struct matrix { 
    double **a; //!<\~English comment \~German Kommentar 
    int r;  //!<\~English comment \~German Kommentar 
    int c;  //!<\~English comment \~German Kommentar 
}; 

Si l'une des langues est sur une autre ligne que son élément, il ne fonctionne pas correctement.