初探多态性

来源:互联网 发布:大数据分析师怎么样 编辑:程序博客网 时间:2024/05/15 07:05

多态性

多态性分类

多态性分为编译时多态性和运行时多态性。

编译时多态性:

一个源程序经过编译、连接,成为可执行程序的过程是把可执行代码连编到一起的过程。其中,在运行之前就完成的联编称为静态连编,即编译时多态性。

优点是:函数调用速度快、效率高。

 

静态多样性主要包括:重载和模板

重载主要是函数名相同,其他的可以不同,所以,调用某一函数时,就是通过返回类型、参数类型、参数个数等来区分,以便找出这个函数。

模板:模板一般都是定义在头文件中,有函数模板、类模板。使用template<typename T1,typenameT2,…,typename Tn>,然后用定义类和函数的方式来定义即可。

模板注意:

         需要在成员函数定义之前进行模板声明;

         在成员函数名前缀上“类名<类型参数>::”;

        

运行时多态性:

动态联编是指系统在运行时实现某一动作。使用这种联编方式,直到程序运行时才知道调用哪一个函数。

优点是:提供了更好的灵活性、问题的抽象性和程序的易维护性。

运行时多态性主要包括:虚函数的实现。

 

含有虚函数的类称之为抽象类,抽象类不能直接创建对象,但是可以通过继承的方式,让其派生类创建对象,然后上溯到抽象的基类。

0 0
原创粉丝点击