多态

c++虚函数和多态

本实验通过两组实验来对比virtual对函数执行情况的影响。第一组实验用于验证virtual关键字对析构函数执行顺序的影响。第二组实验用于virtual关键字对一般函数执行的影响。 实验1:virtual析构函数 类结构:假设有基类A,A有派生类B1和B2,B2有派生类B3。 我们用三组实验来对照virtual关键字对析构函数执行的影响 基类A的析构函数~A不加virtual关键字,子类B1析构函数加virtual,子类B2析构函数不加virtual 基类A的析构函数~A加virtual关键字,子类B1析构函数加virtual,子类B2析构函数不加virtual,子类B3析构函数不加virtual 基类A的析构函数~A加virtual关键字,子类B1析构函数加virtual,子类B2析构函数加virtual 实验1.1 基类A的析构函数~A不加virtual关键字,子类B1析构函数加virtual,子类B2析构函数不加virtual #include <iostream> using namespace std; class A{ public: ~A(); }; A::~A(){ cout<<"destruct A"<<endl; } class B1 : public A{ public: virtual...
执行时间: 1710844139389.2 毫秒