特定于 Netbeans 的C++错误"Undefined reference to XXX" -(已发布解决方案)

Netbeans-specific C++ error "Undefined reference to XXX" - (Solution posted)

本文关键字:XXX 解决方案 to reference Netbeans C++ Undefined 错误      更新时间:2023-10-16

我为这个问题争论了 5 或 6 个小时,拔掉头发,直到我终于找到解决方案。我想发布这个(不确定是否有一个特定的地方来发布未问问题的解决方案)作为可能遇到同样困难的其他人的解决方案。

我正在 Linux Mint Lisa 上运行的 Netbeans 7.1.1 中编写一个C++项目,并且在尝试使用静态变量时不断收到"对 XXX 的未定义引用"错误。来自 C# 的背景,因此对头文件等不是很熟悉,我搜索了几个小时,希望找到我声明变量或类的方式有问题。我什么也找不到...

转到 Netbeans 中文件资源管理器中的 nbproject 文件夹。打开配置.xml文件。向下滚动到属性名称="源文件"的 logicalFolder 标记。确保所有 .h 和 .cpp 文件都作为 itemPath 标签包含在逻辑文件夹标签中!Netbeans 正确添加了一些,但不是全部 cpp 和 h 文件,因此出现了问题。不知道为什么会出现这种不一致,因为所有类和头文件都是通过同一个 Netbeans 向导添加的。无论如何,随着配置文件的更改,Makefile随后在下一次构建中更新并正确写入,并且全部按预期运行。希望这可以帮助某人!

只是为了向 Levi 的答案添加更多详细信息(对于像我这样不熟悉此的任何人),请单击屏幕左侧的"文件"选项卡,您的文件和文件夹列表所在的位置。这为您提供了与"项目"选项卡不同的文件列表。

展开

项目文件夹(如果尚未展开)。生成的文件夹之一是"nbproject"。展开文件夹。这就是配置.xml所在的地方。

总之:

nbproject>配置>"文件"选项卡.xml

但是,将.h文件添加到配置.xml对我不起作用。

就我而言,我只需要将源文件作为 #include 行包含在其他源文件中即可使其工作......我可以毫无错误地编译单个源文件,但该项目是另一回事。 一旦我在需要找到某些方法的其他源文件中添加了 #include 行,那么一切都按计划进行。 希望这对某人有所帮助。

相关文章: