题目

试题五(共15分,每空3分)

阅读下列说明和C++代码,回答下列问题。

【说明】

  现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL Server和Access两种数据库以及系统中的数据库表Department为例,其类图如图5所示。

image.png

 [C++代码]

    #include<iostream>

    using namespace std;

    class Department{/*代码省略*/};

    class IDepartment{

    public:

        ___(1)___=0;

        ___(2)___=0;

    };

    class SqlserverDepartment: ___(3)___{

    public:

       void Insert(Department* department){

            cout<<"Insert a record into Department in SQL Server! ";

            //其余代码省略

       }

       Department GetDepartment(int id){

       }

    };

    class AccessDepartment: public IDepartment {

    public:

        void Insert(Department* department){

             cout<<"Insert a record into Department in ACCESS! ";

            //其余代码省略

       }

       Department GetDepartment(int id){

            /*代码省略*/

       }

    };

    ___(5)___{

    public:

    __(6)____=0;

    };

    class SqlServerFactory: public IFactory{

    public:

       IDepartment* CreateDepartment() {return new SqlserverDepartment(); }

    };

    class AccessFactory:public IFactory{

    public:

       IDepartment* CreateDepartment() {  return new AccessDepartment() ;  }

       //其余代码省略

    };

作答
本题暂不支持做答,请点击“解析“以对比解题思路
答案/解析
查看试卷及答案