2021.12.5 c++模板方法模式
一、今日学习内容
对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库connDB()方法不同,现使用模板方法模式对其进行设计
#include<iostream>
#include<string>
using namespace std;
class DBOperator {
public:
void process()
{
connDB();
openDB();
useDB();
closeDB();
}
virtual void connDB()=0;
void openDB()
{
cout<<"打开数据库"<<endl;
}
void useDB()
{
cout<<"使用数据库"<<endl;
}
void closeDB()
{
cout<<"关闭数据库"<<endl;
}
};
class OracleDB :public DBOperator{
public:
void connDB()
{
cout<<"连接Oracle数据库"<<endl;
}
};
class SQLServerDB:public DBOperator{
public:
void connDB()
{
cout<<"连接SQLServer数据库";
}
};
void main()
{
DBOperator *db;
cout<<"请选择:1、SQLServer 2、Oracle"<<endl;;
int i;
cin>>i;
if(i==1) {
db=new SQLServerDB();
}else if(i==2) {
db=new OracleDB();
}
db->process();
}

浙公网安备 33010602011771号