新手请问一个小疑点: ) 一定加分喔

新手请教一个小问题: ) 一定加分喔!
新手请教一个小问题: )

今天看到别人写的一个头文件代码如下:

class SortData;

class AXF_IMP_NS SortDataAbstract
{
  public:
  SortDataAbstract();
  virtual ~SortDataAbstract();
 
  protected:
  int m_nComTimeout;  
};

请问class SortData和class AXF_IMP_NS SortDataAbstract 是什么关系?这里不是类SortDataAbstract的
声明吗? 那前面写上class MrEdbFillData;是干嘛的?

谢谢!

------解决方案--------------------
class SortData和class AXF_IMP_NS SortDataAbstract 没有关系

这里不是类SortDataAbstract的声明吗? 那前面写上class MrEdbFillData;是干嘛的? 
可能在SortDataAbstract类的成员函数中使用到了SortData类,所以在这里声明一下才可以用

------解决方案--------------------
上面的class SortData是SortData的声明
这样在这个.h中就可以用SortData 来定义东西了,而不用再包含SortData的头文件了,
这样做可以减少嵌套包含头文件,提高编译效率,减少由于修改头文件造成的麻烦

应该是在头文件里尽量少包含其他的头文件的