10.18

实验 24:模板方法模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解模板方法模式的动机,掌握该模式的结构;

2、能够利用模板方法模式解决实际问题。

 

[实验任务一]:数据库连接

对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库connDB()方法不同,现使用模板方法模式对其进行设计。

实验要求:

1. 画出对应的类图;

2. 提交源代码;

3. 注意编程规范。

 

复制代码
#include<iostream>
using namespace std;
class DBOperator {
public:
    virtual void connDB()=0;
    void openDB() {
        cout<<"打开数据库"<<endl;
    }
    void useDB() {
        cout<<"使用数据库"<<endl;
    }
    void closeDB() {
        cout<<"关闭数据库"<<endl;
    }
    void process() {
        this->connDB();
        this->openDB();
        this->useDB();
        this->closeDB();
    }
};
class OracleDBOperator: public DBOperator{
public:
    void connDB() {
        cout<<"连接Oracle数据库"<<endl;
    }
};
class SQLServerDBOperator:public DBOperator{
public:
    void connDB() {
        cout<<"连接SQLServer数据库"<<endl;
    }

};
int main(){
    DBOperator *db;
    db=new OracleDBOperator();
    db->process();
    cout<<"-----------------"<<endl;
    db=new SQLServerDBOperator();
    db->process();
}
复制代码

 

posted @   奶油冰激凌  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示