浅谈C++多态
什么是多态?
多态是C++三大特性之一,要理解多态,首先得知道什么是多态。多态是指父类指针指向子类对象,实质上就是类的虚拟继承和函数复用。
虚拟继承
虚拟继承是指添加了virtual关键字的类成员:
class A{
public:
virtual void func1(int a){
cout<<"this is A"<<endl;
}
}
函数复用
如父类对象有func1函数,子类对象继承自父类
class B:public A{
public:
virtual void func1(int a,int b){
cout<<"this is B"<<endl;
}
那什么时候会用到多态呢?
当我们需要隐藏子类对象的多余属性和方法时,所以利用父类指针指向子类对象时,就可以完美避免误操作调用了子类对象的属性和方法。
未完待续…