读书人

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

发布时间: 2012-02-06 15:52:45 作者: rapoo

关于文件结构,请高手看下,火急!!!!!
我定义了 三个文件,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

读书人网 >C++

热点推荐