??????????????????????????c/c++???????????????????????飬?????????????????????????????????????д???????????????????£??????????????

???????????????±?????????????

??????????????

    #include <iostream> 
    class A 
    { 
    public: 
        A(){}; 
        ~A() 
        { 
            std::cout << "~A" << std::endl; 
        }; 
    private: 
        int a; 
    }; 
     
    class B : public A 
    { 
    public: 
        B(){}; 
        ~B() 
        { 
            std::cout << "~B" << std::endl; 
        } 
    private: 
        int b; 
    }; 
     
    int main()  
    {      
        B b;      
        return 0; 
    }

????????????????????????? ~B ?? ~A????????B?????b????????????????B???????????????????????????????????

??????? main ?????е?????滻????????

    int main()
    {
        A *pb = new B();
        delete pb;
        return 0;
    }

??????????????????????? ~B ?? ~A???????????????????????????????????????????????????ε??????????????????????

??????? main ?????е?????滻????????

    int main()
    {
        A * pa = new B();
        delete pa;
        return 0;
    }

???????????????????????? ~A?? ????????????????????????????????????????????????????????????????? virtual ????????? delete ?????????????????????????????????????????????????????????????????????

????????????????????????? A ???????????????virtual????????????delete pa????????ε???B???A??????????????

???????????????????????????e????????????????????????????????

?????????????????ò?????????????????????????????£??????????????????????????б???????????????????????????????????б????????????????????????????????????????????

??????????????????????????? virtual ??????????麯?????

????????????????????????£?

    class A 
    { 
    public: 
       A(){}; 
       ~A() 
       { 
           std::cout << "~A" << std::endl; 
       }; 
       void test()
       {
          std::cout << "~test" << std::endl;
       }
    private: 
        int a; 
    }; 
     
    int main() 
    { 
        std::cout << sizeof(A) << std::endl; 
    }

??????? ~A??治??virtual??????????????4

??????? ~A????virtual??????????????8

????????ó?????????

??????1??????????virtual??????????????С??????????С????

??????2??????????????????????麯??????????麯??????С?? 4 ???

??????????????д???????????????????????μ?????????C++??????????????????????????????