我有一个项目,下面的代码:类没有指定类型的错误
#ifndef MAP_H
#define MAP_H
#include <string>
#include "MapCell.h"
using namespace std;
class Map{
public:
Map();
Map(int, int);
Map(string);
virtual ~Map();
private:
int grid_size;
MapCell * grid;
};
#endif
当我去编译,我得到的错误“错误:‘MapCell’没有指定类型”然而,当我将MapCell *网格注释掉,并运行以下主代码块:
#include <iostream>
#include <cstdlib>
#include "MapCell.h"
using namespace std;
int main() {
MapCell * test_var;
test_var = new MapCell();
delete test_var;
cout << "Press enter to end process...";
cin.get();
cin.get();
return 0;
}
一切正常。我知道我的MapCell.h和.cpp文件位于正确的位置,我猜测编译器可以看到它们,因为它是从main工作的。我看周围的一些其他问题,最答案似乎指向任何语法错误或真的不适合在这里(除非我忽视的东西)
在这里发生了什么任何想法向前声明?
参与我的心灵感应电路...投射光环领域...扫描ESP干涉图案...嗯,抱歉,没有。没有工作。 –
哦,主意:它可能有助于查看有问题的标题。以及您的构建命令和搜索路径。 –
好吧,让我们猜测一下:你把'MapCell'的声明放在名字空间'std'中,是吗?或者...你包括不同的头文件叫做相同的?或者...您在此期间编辑了标题? –