静态多态在程序编译的时候,确定将要执行的状态。
动态多态在程序运行的时候,才能确定执行的状态。
下面举例实现动态多态
work函数接口通过传参不同做不同的工作
#include "iostream"using namespace std;class person
{public:person(){}virtual void work(){cout << "没有工作" << endl;}
};class police:public::person
{public:police(){}void work(){cout << "抓小偷" << endl;}
};class nurse:public::person
{public:nurse(){}void work(){cout << "照顾病人" << endl;}
};void work(person &a)
{a.work();
};int main()
{nurse c;police cc;work( c );work( cc );
}