c ++为什么我得到“没有命名类型”错误?

时间:2011-04-28 18:12:17

标签: c++

在我的主要课程中,我有:

#include "main.h"
outPut O;
int main(){
...
}

其中main.h文件有#include“outPut.h”

“outPut.h”行有:

#ifndef OUTPUT_H
#define OUTPUT_H

#include <iostream>
#include <fstream>

    #include "properties.h"
    #include "particles.h"

    class outPut{
     public:
      outPut();
      std::ofstream file;
      void show(lipid * l);
    };

    #endif

和outPut.cpp:

#include "outPut.h"

outPut::outPut(){
}

当我编译它时,我收到错误:

  

main.cpp:3:错误:'outPut'没有   命名一个类型

为什么会这样?

...谢谢

编辑,发现它。 main.h没有保存,#include“outPut.h”被取消了。

2 个答案:

答案 0 :(得分:2)

您需要#include "outPut.h"中的main.cpp

答案 1 :(得分:0)

grep for OUTPUT_H在所有源文件中。您可能无意中在包含早于outPut.h的其他标题中定义了包含保护。