有四个文件  "saving.h"  saving.cpp"  "checking.h"  "checking.cpp"文件1"saving.h"class Saving
{
public:
Saving(unsigned int accNo,float balan=0);
//others;
protected:
//------;
};  
文件2"saving.cpp"
#include<iostream.h>
#include"saving.h"Saving::Saving(unsigned accno,float balan)
{
//----------;
}void  //()
{
   ------------;
}文件3"checking.h"class Checking : public Saving
{
public:
Checking(unsigned accno,float balan=0);
//--------;      
protected:
REMIT remittance;
};文件4"checking.cpp"
#include"Checking.h"Checking::Checking(unsigned accno,float balan) : Saving(accno,balan)
{
//------;
}void Checking:://()
{
    //--------;
}编译时出现:
checking.h(7) : error C2504: 'Saving' : base class undefined
checking.cpp(4) : error C2614: 'Checking' : illegal member initialization: 'Saving' is not a base or member
//-----------.但如果把这些代码重新组合成另一个新文件就能顺利的通过。
各位大虾们这是咋回事呀?是和编译器的设置有关吗?
???????????????????????????

解决方案 »

  1.   

    文件3"checking.h"
    中得包含文件1"saving.h"
      

  2.   

    在Checking.h中加入#include "saving.h"
      

  3.   

    文件3"checking.h"
    #include "Saving.h"class Checking : public Saving
    {
    public:
    Checking(unsigned accno,float balan=0);
    //--------;      
    protected:
    REMIT remittance;
    };文件4"checking.cpp"
    #include"Checking.h"Checking::Checking(unsigned accno,float balan) : Saving(accno,balan)
    {
    //------;
    }void Checking:://()//这行是不是写错了
    {
        //--------;
    }