我有一個項目,下面的代碼:類沒有指定類型的錯誤
#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'中,是嗎?或者...你包括不同的頭文件叫做相同的?或者...您在此期間編輯了標題? –