2010-01-31 5 views
5

Ich weiß, dass Header-Wächter (am meisten) Ärger vermeiden; Ruf mich an @ n @ l wenn du magst, aber ich mag einfach keinen schlampigen Header-Dateibaum.Ich suche Tool, um Datei-Abhängigkeiten grafisch darzustellen (Header) in C/C++

Wenn ich auf Papier eine Box für jede Header-Datei zeichnen und sie durch Linien verbinden, die #include darstellen, sehe ich gerne eine ordentliche Hierarchie. Aber was ich normalerweise sehe, ist ein komplexes Netz.

Vielleicht ich bin @ n @ l, aber für mich stellt dieses verschlungene Netz schlampig-Denken dar und ich möchte Ordnung herbeiführen, indem ich die #include Hierarchie reorganisiere.

Kennt jemand ein Werkzeug, mit dem ich die # include-Hierarchie visualisieren kann? Vorzugsweise ein kostenloses Tool.

(und, ja, ich weiß, dass ich „wahrscheinlich mit graphviz Punkt tun könnte“, aber das ist keine Antwort ;-)

Antwort

4

Doxygen kann dies für Sie tun, wenn Sie es verwenden, zusammen mit dem Punkt Werkzeug. Hier

ein Beispiel: http://www.neuraladvance.com/json-c/html/json_8h.html

+0

Doxygen kann auch ein ordentliches Hierarchiediagramm drucken stellvertretend für alle Abhängigkeiten für C, C++, Python, Java, usw. –

+1

hmm, warum nicht tat Ich denke an Doxygen? Simon, kann es das für das ganze Projekt tun, oder nur auf Dateibasis? Ich will es wirklich für das ganze Projekt. Sie sehen die Komplexität einer einzelnen Datei nicht wirklich. – Mawg

+0

@Mawg - Ich bin mir nicht sicher, um ehrlich zu sein. Ich hatte nie ein vollständiges Abhängigkeitsdiagramm. Ich bin mir ziemlich sicher, dass es leicht zu tun wäre, obwohl Sie ein wenig nachdenken müssen. Nachdem Doxygen bereits alles hat, was Sie brauchen, müssen Sie das Zusammennähen nur noch manuell durchführen. – Cromulent

4

Sie könnten versuchen, cinclude2dot

+0

Auf den ersten Blick es sieht perfekt aus, danke! Ich werde es ausprobieren und zu dir zurückkommen. – Mawg

+0

Dies ist die Art von Werkzeug, die Unix großartig gemacht hat. +1 –

Verwandte Themen