#ifndef _OBJECT_H
#define _OBJECT_H
#include<iostream>
#include<string>
using namespace std;class object{};class LibraryObject:public object
{
private:
int index;
string name;
public:
LibraryObject();
LibraryObject(int i,string n="无");
LibraryObject(string n);
int GetIndex();
string GetName();

void SetIndex(int );
void SetName(string);
virtual void ShowData();};
#endif 
#include<iostream>
#include<string>
#include "LibraryObject.h"
using namespace std;
LibraryObject::LibraryObject()
{index=-1,name="无";}
LibraryObject::LibraryObject(int i, string n)
{index=i;name=n;}
LibraryObject::LibraryObject(string n)
{name=n;}
int LibraryObject::GetIndex()
{return index;}
 string LibraryObject::GetName()
{return name;}
void LibraryObject::SetIndex(int i)
{index=i;}
void LibraryObject::SetName(string n)
{name=n;}
void LibraryObject::ShowData()
{cout<<index<<"  "<<name<<" "<<endl;}
 

解决方案 »

  1.   

    #include<iostream>
    #include<string>
    #include"LibraryObject.h"
    using namespace std;class Book :public LibraryObject
    {
    private:
    string wname;
    string pubcomname;
    bool state;
    string re;
    bool CDROM;
    /////
        static const char FileName[15];
    public:
    Book();
    Book(int i,string Bookname,string writername,string publishcompany,bool s,bool CDROM=0,string r="");
        Book(int i,string Bookname,string writername,string publishcompany,bool s,bool CDROM=0);
    //~Book();
    void SetIndex(int);
    void SetBookname(string);
    void Setwritername(string);
    void Setpublishcompany(string);
    void Setstate(bool);
    void SetCDROM(bool);
        void Setre(string); int GetIndex(void);
    string GetBookname(void);
    string Getwritername(void);
    string Getpublishcompany(void);
    bool Getstate(void);
    bool GetCDROM(void);
        string Getre(void); void CheckOut(void);
    // static const char *GetFileName(){return FileName;}
    };
    const char Book::FileName[15]=" Book.txt ";
    //const char *Book::GetFileName();
    #include<iostream>
    #include<string>
    #include"LibraryObject.h"
    #include"Book.h"
    using namespace std;
    Book::Book():LibraryObject()
    {
     wname="无";
         pubcomname="无";
     state=0;
         re="三无";
         CDROM=0;
    }
    Book::Book(int i,string Bookname,
       string writername,string publishcompany,
       bool s,bool c,string r):LibraryObject(i,Bookname)
    {
     wname=writername;
         pubcomname=publishcompany;
     state=s;
         re=r;
         CDROM=c;
    }
    Book::Book(int i,string Bookname,string writername,
       string publishcompany,bool s,bool c):LibraryObject(i,Bookname)
    {
     wname=writername;
         pubcomname=publishcompany;
     state=s;
         re="";
         CDROM=c;
    }
    void Book::SetIndex(int i)
    {LibraryObject::SetIndex(i);}
    void Book::SetBookname(string n)
    {LibraryObject::SetName(n);}
    void Book::Setwritername(string w)
    {wname=w;}
    void Book::Setpublishcompany(string pc)
    {pubcomname=pc;}
    void Book::Setstate(bool s)
    {state=s;}
    void Book::SetCDROM(bool CD)
    {CDROM=CD;}
    void Book::Setre(string r)
    {re=r;}
    int Book::GetIndex(void)
    {return LibraryObject::GetIndex();}
    string Book::GetBookname(void)
    {return LibraryObject::GetName();}
    string Book::Getwritername(void)
    {return wname;}
    string Book::Getpublishcompany(void)
    {return pubcomname;}
    bool Book::Getstate(void)
    {return state;}
    bool Book::GetCDROM(void)
    {return CDROM;}
    string Book::Getre(void)
    {return re;}
    void Book::CheckOut(void)
    {
    if (state==0)
     throw("Book is not in library!");
    state=0;
    }
      

  2.   

    我该好了!!
    可是我对book类稍加改动
    就提示说--------------------Configuration: Library - Win32 Debug--------------------
    Compiling...
    Book.cpp
    Librarian.cpp
    Library.cpp
    d:\library\book.h(13) : error C2011: 'Book' : 'class' type redefinition
    LibraryObject.cpp
    Reader.cpp
    Error executing cl.exe.Library.exe - 1 error(s), 0 warning(s)
      

  3.   

    在book.h文件开头加上下面的
    #ifndef __BOOK_H__
    #define __BOOK_H__结尾加上下面的
    #end if   //__BOOK_H__试试