您的位置:首页 > 编程语言 > C语言/C++

什么是c++中的多态

2015-08-04 21:59 183 查看

什么是c++中的多态

引言

多态(Polymorphism)、封装(Encapsulation)和继承(Inheritance)是面向对象思想的“三大特征”,此处俗称“面向对象的三板斧”,而多态是三板斧中最厉害的杀招,是面向对象最精微的内功,可以说,不理解多态就不懂得什么是面向对象。

定义

同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。

简单地概括为“一个接口,多种方法”。

类别

(1)编译时的多态性。

  编译时的多态性是通过重载来实现的。对于非虚的成员来说,系统在编译时,根据传递的参数、返回的类型等信息决定实现何种操作。(参考我的博文《c++中的函数重载》)

(2)运行时的多态性。

  运行时的多态性就是指直到系统运行时,才根据实际情况决定实现何种操作。C++中,运行时的多态性通过虚成员实现。

作用

多态的目的则是为了接口重用。也就是说,不论传递过来的究竟是那个类的对象,函数都能够通过同一个接口调用到适应各自对象的实现方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: