码迷,mamicode.com
首页 > 编程语言 > 详细

【C++】探究类派生时构造函数的顺序

时间:2015-05-13 10:40:14      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:   继承   派生   构造函数   顺序   

//探究类派生时构造函数的顺序
//在派生类对象的创建中,首先是虚基类的构造函数并按它们声明的顺序构造。
//第二批是非虚基类的构造函数按它们声明的顺序调用。
//第三批是成员对象的构造函数。最后是派生类自己的构造函数被调用

#include <iostream>
using namespace std;
class B
{
public:
	B()
	{
		cout<<"B"<<endl;
	}
	int x;
};

class B1 
{
public:
	B1()
	{
		cout<<"B1"<<endl;
	}
	int n;
};

class B2
{
public:
	B2()
	{
		cout<<"B2"<<endl;
	}
	int n;
};

class D : public B1, public B2 ,virtual public B
{
public:
	D()
	{
		cout<<"D"<<endl;
	}
	int m;
};

void main()
{
	D d;
}
<img src="http://img.blog.csdn.net/20150512212702511?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZG91ZG91d2ExMjM0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

【C++】探究类派生时构造函数的顺序

标签:   继承   派生   构造函数   顺序   

原文地址:http://blog.csdn.net/doudouwa1234/article/details/45675249

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