VS2019: 提升Linux IntelliSense的准确性和性能( 四 )

这个是一个布尔标志 , 用来指示编译器是否需要查询默认头文件的位置 。 这些默认位置将会自动进行拷贝 。 这个标志仅在编译器不支持gcc-link样式的参数时设置为false 。 gcc和clang编译器都支持查询包含目录(例如:”g++ -x c++ -E -v -std=c++11″) 。

其他会影响到头文件拷贝的C++工程属性
> C/C++ General tab: C/C++编译器的额外的包含目录
> C/C++ Language tab: C语言和C++语言标准

在[Additional Include Directories
中配置的路径会被IntelliSense和编译用到 。 这些路径将会自动被添加到待拷贝目录列表中 。 编译器通常会通过Platfrom Toolset的选项来自动进行填充 。 但是在某些情况下 , 提供一个更加精确的位置对于编译器来说是必要的 。 例如 , 当clang绑定到clang v6时 , 可以显式的选择”clang 8″ 。 编译器将会被查询其默认的包含目录列表 。
[C Language Standard
和[C++ Language Standard
选项用于向编译器提供一个参数来确定需要被查询的默认目录 。 旧版本的VS会拷贝为C和Clang拷贝所有头文件到本地缓存 。 通过使用编译器标准选项 , VS可以明确的判定哪些文件是需要拷贝的 , 避免了非必要的文件拷贝 。

推荐阅读