C++ 通过指针实现多态实例详解
发布时间:2020-12-16 05:12:33 所属栏目:百科 来源:网络整理
导读:C++ 通过指针实现多态实例详解 1.父类(DBConnector) 1)DBConnector.h #include string using namespace std; class DBConnector { private: string name; public: DBConnector(); DBConnector(string _name); ~DBConnector(); void show(); }; 2)DBConne
C++ 通过指针实现多态实例详解 1.父类(DBConnector) 1)DBConnector.h #include <string> using namespace std; class DBConnector { private: string name; public: DBConnector(); DBConnector(string _name); ~DBConnector(); void show(); }; 2)DBConnector.cpp #include "DBConnector.h" #include <iostream> using namespace std; DBConnector::DBConnector() { } DBConnector::DBConnector(string _name) { name = _name; } DBConnector::~DBConnector() { } void DBConnector::show() { cout << name << endl; } 2.子类1(MySqlConnector) 1)MSSqlConnector.h #pragma once #include "DBConnector.h" class MSSqlConnector :public DBConnector { public: MSSqlConnector(); MSSqlConnector(string _name); ~MSSqlConnector(); }; 2)MSSqlConnector.cpp #include "MSSqlConnector.h" MSSqlConnector::MSSqlConnector() { } MSSqlConnector::MSSqlConnector(string _name) :DBConnector(_name) { } MSSqlConnector::~MSSqlConnector() { } 3.子类2(MSSqlConnector) 1)MSSqlConnector.h #pragma once #include "DBConnector.h" class MSSqlConnector :public DBConnector { public: MSSqlConnector(); MSSqlConnector(string _name); ~MSSqlConnector(); }; 2)MSSqlConnector.pp #include "MSSqlConnector.h" MSSqlConnector::MSSqlConnector() { } MSSqlConnector::MSSqlConnector(string _name) :DBConnector(_name) { } MSSqlConnector::~MSSqlConnector() { } 4.Test #include "MySqlConnector.h" #include "MSSqlConnector.h" #include <iostream> #include <string> using namespace std; void main() { MySqlConnector mysql("mysql"); MSSqlConnector mssql("mssql"); DBConnector* p; p = &mysql; p->show(); p = &mssql; p->show(); //mysql.show(); //mssql.show(); } 5.运行结果 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |