【发布时间】:2011-01-06 19:44:08
【问题描述】:
在 MSVS 中,当我 #include
如果启用,#include
访问样式和#include “header.h”风格的指令将 在“用户标题”中搜索路径 “标题搜索”之前的“搜索路径” 路径”,结果是用户 标头(例如您自己的 String.h header) 将优先于 使用#include 时的系统标头 。这是使用 -iquote 标志“用户标头搜索路径”中提供的路径。如果 禁用并且您的编译器完全 支持单独的用户路径,用户 标题只能通过 包括“header.h”风格的预处理器指令。
出于向后兼容性的原因, 此设置默认启用, 但禁用它是强烈的 受到推崇的。 [ALWAYS_SEARCH_USER_PATHS]
你知道如何解决这个问题吗?我真的不想更改我的头文件名称或从项目设置中删除搜索路径并使用本地文件的相对路径(../../ ... /SomeFolder/SomeHeader.h)。
【问题讨论】:
-
构建项目时使用的编译器命令行可能会为某人提供足够的详细信息来帮助解决此问题。这应该可以从一些构建日志中获得。
-
我试图预处理一个虚拟 cpp 文件只包含一个包含
本地头文件:| -
命令行:setenv LANG en_US.US-ASCII setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin :/usr/sbin:/sbin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x c++ -arch armv7 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings - O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -mfix-and-continue -gdwarf-2 -mthumb -miphoneos-version-min=4.2 -引用
标签: c++ xcode include-path