首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于文件结构,请高手看下,火急该怎么处理

2012-02-06 
关于文件结构,请高手看下,火急!!!!!我定义了三个文件,MIPArrayI.h,MIPArray.h,test.h,怎么编译不通啊?//MI

关于文件结构,请高手看下,火急!!!!!
我定义了   三个文件,MIPArrayI.h,MIPArray.h,test.h,怎么编译不通啊?
//MIPArrayI.h
#ifndef   MIPARRAYI_H
#define   MIPARRAYI_H

#include   <set>
#include   "MIPArray.h "

using   namespace   std;

class   MIPArray;

template   <class   X>
class   MIPArrayI
{
set <MIPArray <X> *>   m_HandleSet;//用set记录指向它的句柄。
};
#endif


//MIPArray.h
#ifndef   MIPARRAY_H
#define   MIPARRAY_H
#include   "MIPArrayI.h "

using   namespace   std;
class   MIPArrayI;

template   <class   X> //MIPArrayI的句柄类
class   MIPArray
{
public:
MIPArrayI <X> *   m_pImpl;//
};
#endif

//test.h
#include   "MIPArray.h "
#include   "MIPArrayI.h "

void   main()
{
MIPArrayI <int>   t;
}




[解决办法]
前置声明增加 模板 声明:

//MIPArrayI.h
#ifndef MIPARRAYI_H
#define MIPARRAYI_H

#include <set>
#include "MIPArray.h "

using namespace std;
template <class X> //!! 另外一个文件中的声明类似处理
class MIPArray;

template <class X>
class MIPArrayI
{
set <MIPArray <X> *> m_HandleSet;//用set记录指向它的句柄。
};
#endif

热点排行