c++ - online - para abrir archivos mpp
¿Conoces el árbol de construcción de herramientas de archivos incluidos en project / file? (5)
Digamos, me gustaría tener una herramienta (¿o un script?) Que tome el proyecto (o el archivo .h) y construir el árbol de búsqueda de "includes" incluido en él (de incluido en de incluido en y así sucesivamente). ¿Existe algo como esto? ¿Debería escribir esto yo mismo [por supuesto que soy :), pero puede que alguien ya lo haya escrito o que tenga una idea de cómo obtenerlo]?
Eclipse CDT tiene Incluir navegador en Ventana -> Mostrar vista -> Otro ... -> C / C ++ -> Incluir navegador.
No estoy del todo seguro de que esto sea lo que está buscando, pero puede obtener fácilmente una lista de inclusiones generando el archivo procesado posterior al CPP desde el archivo base c y volviendo a agrupar los comentarios del número de línea / archivo, por ejemplo, utilizando gcc
gcc -E main.c {usual flags} | grep ''#'' | cut -d'' '' -f3 | sort | uniq
donde main.c es tu archivo c base.
Sé que esta es una pregunta antigua, un resultado ligeramente más útil que la salida gcc / g ++ -E por sí sola también usaría el indicador -H (en lugar de, o además de):
g++ -H {my -I and other flags} -E -o /dev/null file.cpp
Aquí hay una salida de muestra, la estructura de árbol ayuda a descubrir quién incluyó qué, como bonificación, también enumera en la parte inferior qué archivos pueden beneficiarse de un protector de inclusión.
. generated/gen-cpp/File.h
.. /usr/include/thrift/TProcessor.h
... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/string
.... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/x86_64-redhat-linux/bits/c++config.h
..... /usr/include/bits/wordsize.h
..... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/x86_64-redhat-linux/bits/os_defines.h
...... /usr/include/features.h
....... /usr/include/sys/cdefs.h
........ /usr/include/bits/wordsize.h
....... /usr/include/gnu/stubs.h
........ /usr/include/bits/wordsize.h
........ /usr/include/gnu/stubs-64.h
..... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/x86_64-redhat-linux/bits/cpu_defines.h
.... /usr/lib/gcc/x86_64-redhat-linux/4.4.6/../../../../include/c++/4.4.6/bits/stringfwd.h
...
Include Finder es una herramienta bastante útil. Tiene algunos errores, y no se ha actualizado en un momento, pero el autor proporciona la fuente, por lo que puede modificarlo a su gusto.