• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > C++ 通过指针实现多态实例详解

C++ 通过指针实现多态实例详解

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了c++继承与多态,c++多态,c++多态性,c++多态性与虚函数,c++多态的实现等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

 C++ 通过指针实现多态实例详解

1.父类(DBConnector)

1)DBConnector.h

#include <string> 
using namespace std; 
class DBConnector 
{ 
private: 
 string name; 
public: 
 DBConnector(); 
 DBConnector(string _name); 
 ~DBConnector(); 
 
 void show(); 
}; 
</div>

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; 
} 
</div>

2.子类1(MySqlConnector)

1)MSSqlConnector.h

#pragma once 
#include "DBConnector.h" 
class MSSqlConnector :public DBConnector 
{ 
public: 
 MSSqlConnector(); 
 MSSqlConnector(string _name); 
 ~MSSqlConnector(); 
}; 
</div>

2)MSSqlConnector.cpp

#include "MSSqlConnector.h" 
 
MSSqlConnector::MSSqlConnector() 
{ 
} 
 
MSSqlConnector::MSSqlConnector(string _name) :DBConnector(_name) 
{ 
  
} 
 
MSSqlConnector::~MSSqlConnector() 
{ 
} 
</div>

3.子类2(MSSqlConnector)

1)MSSqlConnector.h

#pragma once 
#include "DBConnector.h" 
class MSSqlConnector :public DBConnector 
{ 
public: 
 MSSqlConnector(); 
 MSSqlConnector(string _name); 
 ~MSSqlConnector(); 
}; 
</div>

2)MSSqlConnector.pp

#include "MSSqlConnector.h" 
 
MSSqlConnector::MSSqlConnector() 
{ 
} 
 
MSSqlConnector::MSSqlConnector(string _name) :DBConnector(_name) 
{ 
  
} 
 
MSSqlConnector::~MSSqlConnector() 
{ 
} 
</div>

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(); 
} 
</div>

5.运行结果

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C语言模拟实现C++的继承与多态示例
  • C++ 通过指针实现多态实例详解
  • C++中的多态与虚函数的内部实现方法
  • C++多态的实现机制深入理解
  • 从汇编看c++中的多态详解
  • C++多重继承与虚继承分析
  • C++多态的实现及原理详细解析
  • 深入解析C++中的虚函数与多态
  • 深入理解C++的多态性
  • 从汇编看c++中多态的应用

相关文章

  • 2017-05-28C++画正弦线实例代码
  • 2017-05-28C++常对象精讲_const关键字的用法
  • 2017-05-28C语言实现的猴子偷桃之类算法
  • 2017-05-28C语言中while与do-while的介绍与注意事项
  • 2017-05-28解析C++中的字符串处理函数和指针
  • 2017-05-28C++ 多重继承和虚拟继承对象模型、效率分析
  • 2022-04-30C语言程序的错误和警告
  • 2017-05-28c++中template对字符串的处理方法
  • 2017-05-28C++中异常处理的基本思想及throw语句抛出异常的使用
  • 2017-05-28C语言实现返回字符串函数的四种方法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • c/c++语言位域注意事项分析
    • 深入C++中构造函数、拷贝构造函数、赋值操作符、析构函数的调用过程总结
    • 在vs2010中,输出当前文件路径与源文件当前行号的解决方法
    • 基于C++ cin、cin.get()、cin.getline()、getline()、gets()函数的使用详解
    • C++中auto_ptr智能指针的用法详解
    • VC++中HTControl的CHTButton按钮控件类用法实例解析
    • C++实现单链表删除倒数第k个节点的方法
    • C++编程中变量的声明和定义以及预处理命令解析
    • 基于C++ list中erase与remove函数的使用详解
    • 探讨C++中不能声明为虚函数的有哪些函数

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有