EclipseCDT:未解析stl头的包含 我尝试用Eclipse编辑源代码,在C++ Builder下编译,但却被粘贴在未解决的包含< /C>问题>

EclipseCDT:未解析stl头的包含 我尝试用Eclipse编辑源代码,在C++ Builder下编译,但却被粘贴在未解决的包含< /C>问题> ,c++,eclipse,c++builder,header-files,eclipse-cdt,C++,Eclipse,C++builder,Header Files,Eclipse Cdt,例如,代码如下: #include <vector> 当Eclipse看到#include时,如何告诉它使用vector.h?内存和内存。h不引用同一个源 一个是c,另一个是c++ 您的项目设置中是否有正确的包含源代码?这允许我避免Eclipse“未解决的包含”错误 在我的例子中,我必须找到C++向量头在我的计算机上的位置(它是MAC): 我在文件夹“/usr/include/c++/4.2.1”中找到了正确的include位置。然后我将项目eclipse设置如下: Project

例如,代码如下:

#include <vector>

当Eclipse看到
#include
时,如何告诉它使用
vector.h

内存和内存。h不引用同一个源

一个是c,另一个是c++


您的项目设置中是否有正确的包含源代码?

这允许我避免Eclipse“未解决的包含”错误

在我的例子中,我必须找到C++向量头在我的计算机上的位置(它是MAC):

我在文件夹“/usr/include/c++/4.2.1”中找到了正确的include位置。然后我将项目eclipse设置如下:

Project->Properties->C/C++ General->Paths and Symbols->GNU C++->(Add)->"/usr/include/c++/4.2.1"
< >我不使用C++ Builder,但我的解决方案可能会解决你的部分麻烦。

< P>你也可以尝试使用“CDT GCC内置编译器设置”。转到项目属性>C/C++常规>预处理器包含路径>提供程序选项卡 然后检查“CDT GCC内置编译器设置”,如果不是


对于“string”类型,其他解决方案(play with include path等)都不适用于我,但这个解决方案解决了它。

在Windows上,使用Eclipse CDT Oxygen,这里描述的解决方案都不适用于我(包括“提供程序”-“CDT GCC内置编译器设置”)。 对我有效的是:

  • 安装Cygwin,特别是以下软件包(可能并非所有软件包都是严格需要的):
    • libgcc1
    • cygwin32 gcc核心,cygwin32-gcc-g++
    • gcc-g++
    • mingw64-x86_64-gcc-core,mingw64-x86_64-gcc-g++
  • 在项目属性中:
    • 转到“C/C++构建”-“工具链编辑器”并选择“Cygwin GCC”作为“当前工具链”:
    • 转到“C/C++常规”-“预处理器包括路径、Macor等”,在“提供程序”选项卡中,选择:
      • “CDT用户设置条目”(我需要它们用于其他包括,例如我手动引用的Google测试条目)
      • “CDT GCC内置编译器设置Cygwin”。

好的,有条件的
#如果!已定义(使用标准名称)
当包含为时,这显然是正确的,如果包含为,则为错误的。我如何将所有这些信息告诉Eclipse?为了更好地理解您的需要,让我问一下:为什么您需要将这些信息告诉Eclipse?如果你真的需要内存。h然后使用“y.Is”,但是如果你想使用C++头,那么确保C++ C++语言的路径包含在你的项目的属性中。>C/C++常规>路径和符号>包含>您的编译器,然后您可以将正确的ResSourceChanged
内存添加到
vector
以显示我的观点。GNU C++中没有矢量H,但是C++ Builder有这个文件,当它看到<代码>时,它使用了< < /代码> h…如果您选择F3上的#包含,文件本身就包含#包含?至少我的gcc头就是这样做的。如果你的C++ Builder包含在你的项目的包含路径中,那么它应该解析名字并找到它。C++的Builder有哪些版本,1997或2010或中间版本?根据这个页面,版本4在1999发布!这可能是你问题的一大部分。您可以轻松地获得免费的,以及非常新的版本的G+或微软Visual C++快件。这能回答您的问题吗?
find /usr/local -name vector -print
Project->Properties->C/C++ General->Paths and Symbols->GNU C++->(Add)->"/usr/include/c++/4.2.1"