码迷,mamicode.com
首页 > 其他好文 > 详细

在构造函数/析构函数中能否调用虚函数?

时间:2017-10-11 21:48:31      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:结果   ret   code   log   nbsp   virtual   析构函数   void   end   

class Base
{
public:
    Base()
    {
        Fuction();
    }

    virtual void Fuction()
    {
        cout << " construct Base::Fuction" << endl;
    }

    ~Base()
    {
        desFuction();
    }

    virtual void desFuction()
    {
        cout << " destruct Base::Fuction" << endl;
    }
};

class A : public Base
{
public:
    A()
    {
        Fuction();
    }
    ~A()
    {
        desFuction();
    }
    virtual void Fuction()
    {
        cout << " construct A::Fuction" << endl;
    }
    virtual void desFuction()
    {
        cout << " destructr A::Fuction" << endl;
    }
};

int test()
{
    A a;                    
    return 0;
}

输出结果:

cout << " construct Base::Fuction" << endl;
cout << " construct A::Fuction" << endl;
cout << " destructr A::Fuction" << endl;
cout << " destruct Base::Fuction" << endl;
 

在构造函数/析构函数中能否调用虚函数?

标签:结果   ret   code   log   nbsp   virtual   析构函数   void   end   

原文地址:http://www.cnblogs.com/xiuxiu55/p/7652837.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!