C++ étiquetage à la source
Des suggestions sur la qualité façon de les marquer et de recherche de code c++. J'utilise cscope/ctags pour la plupart des choses, mais je trouve qu'il est insuffisant pour trouver mon chemin autour de certains trop complexe de code c++ au travail. J'ai commencé à passer de vim pour Slickedit (qui n'est pas encore parfait, mais mieux) pour la navigation de code, mais voudrais revenir exclusivement à vim.
Ce que je voudrais, c'est quelque chose qui peut comprendre la portée de membres de la classe ainsi, par exemple, si je recherche les références à un membre d'une classe où le même nom existe dans d'autres classes (et éventuellement de code c++), il ne me donner les références pertinentes.
Je préfère quelque chose qui fonctionne déjà de nice avec vim, mais tout package open source tel que je pourrais créer un plugin me serait bien.
Des suggestions apprécié, merci.
- J'ai le même problème à l'aide de ctags: à l'aide de la commande
:tags NamespaceName::ClassName::methodName
tout est ok, mais mettre le curseur au-dessus du nom de la méthode et le typeCTRL + ]
il ne va tromper la méthode, je découvre qu'à l'aide deg + ]
ils montrent une liste des balises que vous pouvez sélectionner le bon correspondant. Le meilleur pour moi est un script pour analyser le code actuel et correctement appel:tag
Vous devez vous connecter pour publier un commentaire.
Êtes-vous sûr que vous avez appelé ctags avec les bonnes options? Pour le C++, j'utilise:
ctags --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++
C'est ce que la documentation a à dire à propos de la
--c++-kinds=+p
option:La
--fields=+iaS
option:La
--extra=+q
option:La
--language-force=C++
option:utilisation doxygen c'est un excellent outil pour parcourir le code et de voir les classes et les membres de relations les uns avec les autres. l'outil génère cliquables html de sortie de votre code source avec des références pour chaque type d'utilisation. vous pouvez le compiler à une base de fichier chm ou de l'utilisation d'un serveur web à la recherche du code pour les mots clés.
Essayer GNU global http://www.gnu.org/software/global/
Il peut générer de la navigation:mesure des pages web de votre code source, ainsi que d'avoir du soutien pour vim et une interface de ligne de commande qui est souvent utile.
Je n'ai aucune expérience de ce type, mais j'ai utilisé Doxygen pour parcourir le code source des projets complexes. Il suffit de lancer avec tous les paramètres activé, et il va générer des graphiques d'appel, le destinataire de l'appel de graphiques, de référence et référencé par les relations, modèle d'instanciations, etc. Les formats de sortie sont les suivants: HTML, LaTeX, CHM, POD
Espère que cela fonctionne!
Pendant un moment j'ai été le mixage de différents outils destinés à cet usage. Vi est un grand éditeur et vous pouvez l'exécuter sur des ordinateurs distants sans tracas, mais l'achèvement de l'information n'est pas semantical.
Lorsqu'ils sont confrontés à un gros problème, j'ai tendance à utiliser Eclipse CDT ou QTCreator, dans les deux cas, les dernières versions, les versions à partir d'un an ne sont pas vraiment agréable. QTCreator est un outil léger, mais j'ai été assez impressionné sur sa capacité à analyser le code. Eclipse CDT est plus lourd, mais je suis un peu plus habitué à l'interface, donc à la fin j'ai tendance à l'utiliser.
Le projet que je suis en train de travailler sur est compilé dans un coin de la sandbox, où aucune de ces deux IDEs peuvent être utilisés, mais vous pouvez obtenir une copie du dépôt juste pour l'analyse et l'utilisation de l'IDE comme un outil de navigation.