在我的主要课程中,我有:
#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”被取消了。
答案 0 :(得分:2)
您需要#include "outPut.h"
中的main.cpp
。
答案 1 :(得分:0)
grep for OUTPUT_H在所有源文件中。您可能无意中在包含早于outPut.h的其他标题中定义了包含保护。