虚函数(Virtual )的作用:实现多态的核心机制,其主要作用是允许派生类重写基类的函数,并通过基类指针或引用调用时,自动执行派生类的实现。
虚函数(Virtual )的用法:当基类中的函数被声明为 virtual 时,派生类可以重写override该函数。
#include <iostream>
//基类
class A {
public:
//基类函数必须声明为virtual才能被重写
virtual void fun()
{
std::cout << "A" << std::endl;
}
void fun2()
{
std::cout << "7777" << std::endl;
}
};
//派生类继承基类
class B : public A
{
public:
//正确使用override,因为基类中的fun是虚函数
void fun() override
{
std::cout << "B" << std::endl;
}
};
class C : public A
{
public:
//正确使用override,因为基类中的fun是虚函数
void fun() override
{
std::cout << "C" << std::endl;
}
};
void test()
{
//C++中利用多态的典型写法通过基类指针统一管理不同派生类对象
//实现灵活的动态调用
A* ptr1 = new B();
A* ptr2 = new C();
ptr1->fun();
ptr2->fun();
//继承父类关系
B* ptrb = new B();
ptrb->fun2();
delete ptr1;
delete ptrb;
}
int main()
{
test();
}
输出结果:

895

被折叠的 条评论
为什么被折叠?



