当我包含一个头文件时,我常常想知道是什么内容。
文档并不总是回答这些问题,也不提供任何保证。
我可以查看源代码,但是对于包含其他标题树的大型头文件也很难观察到。
有什么好的程序可以做这种分析吗?
答案 0 :(得分:5)
使用doxygen之类的工具。您可以将其提供给库的源代码,并输出交叉引用的文档。
答案 1 :(得分:2)
您可以使用编译器的-E
(或/E
;所有C和C ++编译器使用此选项使用此名称)选项来获取翻译单元的预处理输出。这会转储编译器看到的所有声明。看起来,你只是在函数和类之后,而-E
选项也会编写所有声明。如果你真的只想要函数和类,你可以使用clang库来获取抽象语法树(AST)并将其转储出来。
答案 2 :(得分:0)
如果您使用的是Visual Studio,则可以选择使用MS intellisense,wholetomato visual assist或resharper等代码帮助程序。这些可能会在给定的上下文中为您提供所有可访问的变量,类,函数,类型,命名空间,常量等。
其他IDE也可能提供此功能,但我从未在Visual Studio中使用过它。似乎QtCreator可能是指向here的好选择。