虚函数的理解
1、c++ virtual 函数作用:如果重写的函数中有重名的函数,那么则调用重写的函数
2、 如果不是虚函数,则调用继承的函数
3、“重写”的要求是函数的特征标(包括参数的数目、类型和顺序)以及返回值都必须与基类中的函数一致
4、只需将基类中的成员函数声明为虚函数即可,派生类中重写的virtual函数自动成为虚函数
5、重载的理解是:同一个类,内部的同名函数具有不同的参数列表称为重载
6、重写则是派生类对基类同名函数的“本地改造”,要求函数特征标完全相同。当然,返回值类型不一定相同
#include< iostream >
#include < string >
class base
{
int a,b;
public:
virtual void test()
{
std::cout << “基类方法” << std::endl;
}
virtual ~base()
{
}
};
class inheriter : public base
{
public:
void test()
{
std::cout << “派生类方法” << std::endl;
}
};
int main()
{
base *p1 = new base;
base *p2 = new inheriter;
p1->test();
p2->test();
return 0;
}