C ++包括表演有趣的Eclipse

时间:2017-08-27 22:23:13

标签: c++ eclipse include

我试图用C ++写一个神经网络,而在我试图写的一个头文件中,顶部有一个包含问题。当我双击Eclipse的文件大纲中的include时,它会将我带到write,因此Eclipse知道它在那里,但编译器一直在抱怨它不是。该目录看起来像这样(我删除了与问题无关的所有文件):

src
->Layers
  -->Layer.h
->Neurons
  -->Neuron.h
->main.cpp

Layers.h文件代码如下:

#ifndef LAYERS_LAYER_H_
#define LAYERS_LAYER_H_
#include <vector>
#include "../src/Neurons/Neuron.h"

class Layer{
public:
    std::vector<Neuron> layer;
    Layer(Neuron a, int n){
        layer = std::vector<Neuron>(n);
        for(int i = 0;i<n;i++){
            layer[i] = a;
        }
    }
    virtual std::vector<double> fire(std::vector<double>);
    virtual std::vector<double> fire();
    virtual std::vector<double> derivative(std::vector<double>);
    virtual std::vector<double> derivative();
    virtual ~Layer(){}
};



#endif /* LAYERS_LAYER_H_ */

和#include&#34; ../ src / Neurons / Neuron.h&#34;给出错误

In file included from ..\src\Layers\Layer.cpp:7:0:
..\src\Layers\Layer.h:11:10: fatal error: ../src/Neurons/Neuron.h: No such file or directory
 #include "../src/Neurons/Neuron.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

我已经能够将该文件包含在main.cpp中,并且工作正常。

1 个答案:

答案 0 :(得分:1)

SILENCED_SYSTEM_CHECKS = ["models.W001"] 告诉编译器在相对于当前文件位置的目录层次结构中上升一级。因此$fp = fsockopen("127.0.0.1", 80, $errno, $errstr, 30); if (!$fp) { echo "$errstr ($errno)<br />\n"; } else { fwrite($fp, "You message"); while (!feof($fp)) { echo fgets($fp, 128); } fclose($fp); } 已经在#include "../src/Neurons/Neuron.h"内,并且无需添加../。因此,您的包含应如下所示:

src