C++学校项目管理系统

要求:
(1)该系统主要处理项目的相关信息
(2)教学项目信息主要包括:项目编号、项目名称、等级、负责人、课程名称、经费、项目内容等内容。
(3)科研项目信息主要包括:项目编号、项目名称、等级、负责人、经费、技术线路、项目内容等内容。
(4)教学科研项目信息主要包括:项目编号、项目名称、等级、负责人、课程名称、经费、技术路线、项目内容等内容信息的录入、修改、删除、查询、排序、分页(一页显示若干条数据)完成以下功能
(6)完成以下功能:项目申请(填写项目信息)与审批(确定项目是否通过,并确定最终审批通过的项目经费,它可以与申请费用不同)
提示:
1)增加必要的数据成员、成员函数或类
2)使用继承、虚基类(各项目类)

typedef struct _ITEMDATA
{
  string num; //项目编号
  string name;  //项目名称
  int  level;  //等级
  string leader;  //负责人
  float funds;  //经费
  string content; //内容
}ITEMDATA;
class Item //定义基类
{
  private:
    ITEMDATA itemData;
    public:
      Item() {}
      ~Item() {}
      Item(ITEMDATA data) {itemData = data}
      void setData(ITEMDATA data) {itemData = data;}
};
class teach_Item : virtual public Item
{
  private:
    string classname;
  public:
    teach_Item() {}
    teach_Item(ITEMDATA data,string cname) : Item(data) {classname = cname;}
    void setData(ITEMDATA data,string cname) {setData(data);classname = cname;}
    void setcname(string cname) {classname = cname;}
};
class sci_Item : virtual public Item
{
  private:
    string route;
  ...
};
class teach_sci_Item : public sci_Item,public teach_Item
{
  ...
};