gpt4 book ai didi

c++ - 如何在 VC++ 项目中强制执行附加包含文件搜索顺序?

转载 作者:可可西里 更新时间:2023-11-01 17:39:04 27 4
gpt4 key购买 nike

例如,我有两个 header.h 文件位于两个不同的目录 include1include2。我的源代码文件使用不指定确切位置的常规包含,如下所示:

#include "header.h"

在项目配置中,我将我的 include1include2 文件夹都设置在附加包含目录列表中。

问题是当我构建我的项目时,每次都会选择 include1 文件夹,无论我在附加包含列表中定义它们的顺序如何。

如果我想使用特定的文件夹或特定的头文件而不是另一个(如果它们具有相同的文件名),是否有任何方法可以强制执行搜索顺序?

最佳答案

包含顺序(MS 的 documented)是:

The compiler searches for directories in the following order:
1. Directories containing the source file.
2. Directories specified with the /I option, in the order that CL encounters them.
3. Directories specified in the INCLUDE environment variable.

所以这实际上取决于声明包含目录的位置。如果它们都使用/I 选项指定(在配置属性 > C/C++ > 常规 > 附加包含目录下的 GUI 中),则指定的顺序就是搜索的顺序。如果目录位于 INCLUDE 环境变量中(在配置属性 > VC++ 目录下的 GUI 中),则取决于它们的声明位置。如果它在属性表中,那么您必须继承它们并按照所需的顺序自行声明它们(和其他继承的目录)。

关于c++ - 如何在 VC++ 项目中强制执行附加包含文件搜索顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32183876/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com