C++ 讲解:多态
2016-01-11 22:14
330 查看
什么是多态
多态是基于继承和封装的。术语来说就是用子类创建父类的对象。
如何实现多态
C++ 中多态用virtiual 关键字来实现。一旦父类的函数被virtual 修饰,如果子类有同名函数,用子类初始化父类就会执行子类的函数。
代码演示
最后输出结果为:A1#include <iostream> using namespace std; class A{ public: virtual ~A(){} virtual void say(){cout << "A" << endl;} }; class A1:public A{ public: virtual ~A1(){} void say(){cout << "A1" << endl;} }; int main() { A *a = new A1; a->say(); return 0; }
注意事项
子类初始化父类,最好把父类的构析函数用virtual 修饰,这样回收父类对象时,就会执行子类的构析函数。构造函数、全局函数、内联函数、静态函数不能被virtual 修饰。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- 关于指针的一些事情
- c++ primer 第五版 笔记前言
- share_ptr的几个注意点
- Lua中调用C++函数示例
- Lua教程(一):在C++中嵌入Lua脚本
- Lua教程(二):C++和Lua相互传递数据示例
- C++联合体转换成C#结构的实现方法
- C++高级程序员成长之路
- C++编写简单的打靶游戏
- C++ 自定义控件的移植问题
- C++变位词问题分析
- C/C++数据对齐详细解析
- C++基于栈实现铁轨问题
- C++中引用的使用总结
- 使用Lua来扩展C++程序的方法
- C++中调用Lua函数实例
- Lua和C++的通信流程代码实例
- C与C++之间相互调用实例方法讲解
- 解析C++中派生的概念以及派生类成员的访问属性