Eclipse Neon:找不到我的用户定义 class(c++,Linux)

Eclipse Neon: can't find my user-defined class (c++, Linux)

我在 Eclipse Neon 中有一个 c++ 项目,Ubuntu 16.04 配置为使用 opencv。该项目似乎是正确的(即:opencv 不是问题:-))配置,直到我在项目中创建一个新的 class 并尝试从 main 中使用它。

IDE 似乎知道我的 class 'Calculaflujos' 存在,因为自动完成功能会显示 class 方法的列表。但是,当我尝试构建项目时,它说(屏幕截图的下半部分):'fatal error: Calculaflujos.cpp, no such file or directory'.

我对c++的经验很少,make文件是用Eclipse生成的。

知道为什么会这样吗?

谢谢。

这里发生了一些事情:

  1. 您应该包含另一个 .cpp 文件中的 .h 文件。
  2. 您正在使用 <> 类型包含,这意味着它不会考虑当前目录中的文件。使用 "" 或将 src 添加到您的包含路径。

一个具体的小例子:

$ cat a.h
/* stuff in header file */

$ cat quotes.cc 
#include "a.h"

$ cat gtlt.cc 
#include <a.h>

$ g++ -c quotes.cc

$ g++ -c gtlt.cc
gtlt.cc:1:15: fatal error: a.h: No such file or directory
 #include <a.h>
               ^
compilation terminated.

$ g++ -c gtlt.cc -I .
  1. 考虑 控制台 视图中的输出。有时看到编译器的原始输出是有意义的。将其包含在像这样的问题中总是非常有帮助的。