C++的多态

C++多态机制:

1)参数多态:模板

2)强制多态:类型强制转换

3)重载多态:函数重载,操作符重载

4)包含多态:子类型的虚函数

C++中采用虚拟函数实现包含多态,虚拟函数为C++提供了更为灵活的多态机制,这种多态性在程序运行时才能确定,因此虚拟函数是多态性的精华,至少含有一个虚拟函数的类称为多态类。包含多态在程序设计中使用十分频繁。

举一个自己写的例子,包含着各种多态:

#include <iostream>
using namespace std;

template <class T>
class Base {
public:
    Base(){d=0;p=NULL;}
    Base(int a,T* q){d=a;p=q;}
    T *operator ++() {d=d+1;p++;return p;}
    virtual void display() { cout<<"Base";return;};

private:
    double d;
    T *p;

};

class Child:public Base<int> {
public:
    void display() {cout<<"Child";return;}
};
原文地址:https://www.cnblogs.com/Yogurshine/p/2857769.html