我想要包含一个头文件。我在C ++环境中工作,(C ++ 11,Windows操作系统,Netbeans 7.3.1 IDE,Cygwin_4.x工具集)。我不知道如何设置环境/ IDE(我在6个月前做过)。我也不了解C ++构建过程的基本原理或Cygwin相关的问题,所以我可能要填补其他一些参考/文档的空白(具体来说,我不确定)。
我的最终目标是能够使用不需要完整文件路径的语法来包含头文件。我想写一些简洁的东西,比如:
#include "src\stuff\blah.h" //or even better: #include "blah.h"
我可以完全编译程序的唯一方法是使用完整的文件路径,如下所示:
#include "C:\NetBeansProjects\Project1\src\stuff\blah.h"
而且,我只能使用完整路径编译一次。如果我尝试重建,它会弹出*** multiple target patterns. Stop.
错误。这个错误有变通方法;那些是1)删除每次重建之间的build
和dist
文件夹(yikes?),或2)following this 16 step setup process。
我不想遵循这些变通办法中的任何一种,因为它们似乎没有提供我想要的东西。如何设置我的环境以实现我想要的...能够在不使用完整路径的情况下包含头文件?
答案 0 :(得分:1)
感谢DanielKO获得此答案。
就我而言,我能够包含语法:
#include "../stuff/blah.h"
我没有在C ++编译器的“代码帮助”部分下配置任何内容。
我的所有代码都在“src”下作为我的NetBeans项目中的父目录。似乎文件的完整路径不是必需的,唯一必须引用的目录是最低级别的子目录(在我的例子中,“stuff”)。
答案 1 :(得分:1)
在NetBeans中,我添加了库列表的路径:
转到属性 - >选择C ++ - >选择'包含库' - >'添加' 现在:使用选项“absolute”
转到“属性” - >“选择C ++” - >选择“其他库目录” - >“添加” 现在:使用选项“absolute”
为什么项目无法识别“自己的”头文件,这一点非常模糊。