请问下什么是OO编程中的多态性

来源:百度知道 编辑:UC知道 时间:2024/06/16 11:58:05

多态性就是多种表现形式,具体来说,可以用"一个对外接口,多个内在实现方法"表示。举一个例子,计算机中的堆栈可以存储各种格式的数据,包括整型,浮点或字符。不管存储的是何种数据,堆栈的算法实现是一样的。针对不同的数据类型,编程人员不必手工选择,只需使用统一接口名,系统可自动选择。

举例子说明一下:
#include <iostream.h>
class A {
public:
virtual void test() { cout<<"aaa"<<endl; } //运行时的多态性,如果不加virtual就是编译时的多态
//void test() { cout<<"aaa"<<endl; }//编译时的多态性
};
class B:public A
{
public:
void test() {cout<<"bbb"<<endl;}
};
class C:public B
{
public:
void test() {cout<<"ccc"<<endl;}
};
void main()
{
C cc;
A *p=&cc;
p->test();
}