我有2個類中不同的命名空間和兩者需要包括相同類image.h的,但是當我包括在同一時間我得到一個錯誤。在這裏我的課:預防多發性包括在C++
FilterManager.h:
#ifndef FILTERMANAGER_H_
#define FILTERMANAGER_H_
#include "../Images/Image.h"
namespace Filter {
class FilterManager {
public:
Image* applyFilter(int filterType, PGMImage *pgmImage);
};
} /* namespace Filter */
#endif /* FILTERMANAGER_H_ */
主應用程序類:包括圖像/ image.h的和過濾器/ FilterManager.h在同一時間,我得到一個錯誤。
#include <iostream>
#include <stdlib.h>
#include <fstream>
#include <stdio.h>
#include "Images/Image.h"
#include "Filter/FilterManager.h"
using namespace std;
int main() {
//new typename ImageIO::ImageIO;
Images::Image *Image = NULL;
Filter::FilterManager::getInstance();
pgmImage = imageIO->readPGM("Resources/house.256.pgm");
return 0;
}
而且image.h的類
#ifndef IMAGE_H_
#define IMAGE_H_
#include "Image.h"
namespace Images {
class Image {
public:
Image();
virtual ~Image();
private:
int** imatrix(int nrl,int nrh,int ncl,int nch);
};
} /* namespace Image */
#endif /* IMAGE_H_ */
感謝所有幫助
呃......什麼錯誤? Image.h裏面怎麼樣? –
你可以顯示Image.h的代碼嗎?它使用'#ifndef IMAGE'嗎?它是什麼類型的錯誤? –
我更新我的問題 – cagryInside