C++ VS2010能告诉我哪个头文件拉入声明吗?

C++ VS2010能告诉我哪个头文件拉入声明吗?,c++,c,visual-studio-2010,include,C++,C,Visual Studio 2010,Include,我在一个混合的C/C++项目中有一个头文件,称之为a.h,它使用另一个头文件中声明的类型,比如X.hA.h不直接包括X.h,而是包括其他头文件,这些头文件本身包括最终包括X.h的其他头文件等 我想知道A.h中包含的哪些头文件间接负责从X.h中引入此类型声明,而无需亲自手动递归检查头文件的整个层次结构 Visual Studio 2010可以向我显示此信息吗?是的,有一个编译器选项,允许您查看包含哪些标头以及何时包含 它是/showIncludes,您可以在“高级项目属性”中找到它。不幸的是,实际

我在一个混合的C/C++项目中有一个头文件,称之为
a.h
,它使用另一个头文件中声明的类型,比如
X.h
A.h
不直接包括
X.h
,而是包括其他头文件,这些头文件本身包括最终包括
X.h
的其他头文件等

我想知道
A.h
中包含的哪些头文件间接负责从
X.h
中引入此类型声明,而无需亲自手动递归检查头文件的整个层次结构


Visual Studio 2010可以向我显示此信息吗?

是的,有一个编译器选项,允许您查看包含哪些标头以及何时包含


它是
/showIncludes
,您可以在“高级项目属性”中找到它。

不幸的是,实际使用此信息非常非常困难。我感兴趣的头文件在原始文件的下面几百行结束(所有MS SDK和Boost头文件都是如此),无法折叠此列表。@您可以尝试暂时从硬盘中删除头文件。第一个包含点将被标记为(
文件未找到,试图包含在X.h
)或类似内容。但这不一定有效-它可能在到达
A.h
之前很久就在其他编译单元上出错(在本例中,它确实如此)。